IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SDL Discussion :

Question de debutant


Sujet :

SDL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite Avatar de SofEvans
    Homme Profil pro
    Développeur C
    Inscrit en
    Mars 2009
    Messages
    1 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur C

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 087
    Par défaut Question de debutant
    Bonjour,

    Voila ma question, elle peut sembler bête mais bon :

    Je voudrais savoir quelle est la différence entre les deux code suivant et lequel il serai souhaitable d'utiliser :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
    SDL_Event event;
     
    while(continuer)
    {
            while (SDL_PollEvent(&event))
            {
                  ...
             }
             ...
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
     
     
     
    while(continuer)
    {
            // Pourquoi on déclare event ici ??
            SDL_Event event;
            while (SDL_PollEvent(&event))
            {
                  ...
             }
             ...
    }


    En fait, ce que je voudrais réellement savoir c'est pourquoi event est déclaré dans la boucle principal ? Qu'est ce que cela implique ?

    J'ai aussi vu qu'on faisait la même chose avec SDL_GetKeyStates, est pour la meme raison ou pour une raison différente ? Quelle est cette raison ?

    Bref, si quelqu'un peut eclairer la lanterne d'un grand debutant ...

    Merci par avance ^^ !

  2. #2
    Membre Expert
    Avatar de coyotte507
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 327
    Par défaut
    Salut,

    Ca ne change rien, ou alors peut-être au niveau du code assembleur mais les répercussions sont infimes.

    Par contre en général pour garder le code clair et modifiable rapidement, et pour ne pas avoir de variables occupant de la mémoire inutilement alors qu'elles ne servent plus à rien, il vaut mieux déclarer ces variables seulement dans le bloc dans lequel on a besoin.

    Par exemple, si tu avais dans ton code autre chose après ta boucle, alors ça prendrait du sens de déclarer ta variable à l'intérieur de ta boucle

    Mais là c'est comme tu veux!

  3. #3
    Membre éclairé Avatar de Julien Bodin
    Homme Profil pro
    Devops
    Inscrit en
    Février 2009
    Messages
    474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Devops
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2009
    Messages : 474
    Par défaut
    C'est lié au concept de la portée des variables.

    Lorsque du déclares une variable dans un bloc (délimité par les crochets {} ) elle n'est utilisable que dans ce bloc et ses "sous-blocs".

    Tes deux exemples sont très similaires. Dans le premier cas tu pourras réutiliser la variable event après l'exécution de ton premier while, alors que dans le second cas ta variable n'existera plus à la sortie du bloc.

    En règle générale on essaie de déclarer la variable seulement pour le bloc nécessaire, principalement pour une question de lisibilité du code.

    N'hésites pas à lire quelques cours de C/C++ si tu veux apprendre les bases du langage.

    EDIT : grillé

  4. #4
    Membre émérite Avatar de SofEvans
    Homme Profil pro
    Développeur C
    Inscrit en
    Mars 2009
    Messages
    1 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur C

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 087
    Par défaut
    Merci beaucoup,

    Je savais déjà ces histoire de portée de variable, mais la je pensais vraiment qu'il y avait autres chose derrière.

    Bon ben je vais bien dormir ce soir, merci a tous de votre rapidité

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Questions de debutant (C : console application)
    Par Fredovsky dans le forum C
    Réponses: 3
    Dernier message: 23/03/2006, 13h59
  2. question de debutant sur les applets et la securité
    Par Invité dans le forum Applets
    Réponses: 2
    Dernier message: 27/01/2006, 15h10
  3. [C#] Question de debutant: methode "parent&quo
    Par bflash2k dans le forum Windows Forms
    Réponses: 8
    Dernier message: 15/01/2006, 16h37
  4. 2 questions de debutant
    Par New_programm_er dans le forum Ordinateurs
    Réponses: 6
    Dernier message: 29/12/2005, 09h32
  5. Vue parametrée (suite) - Question de debutant
    Par zorglob dans le forum Oracle
    Réponses: 1
    Dernier message: 28/12/2005, 12h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo