Partage
  • Partager sur Facebook
  • Partager sur Twitter

Modification d'un #define

    6 août 2008 à 2:51:40

    Est il possible de modifier la valeur d'un define au cours du programme ?

    Par exemple :

    #define LONGUEUR 50
    
    ...
    
    void Classe::methode()
    {
       LONGUEUR=30;
    }
    


    Sinon, nous sommes obliger de passer par des variables globales ?
    • Partager sur Facebook
    • Partager sur Twitter
      6 août 2008 à 3:11:04

      Un define définit un symbole. Avec le code ci-dessus, tout élément LONGUEUR sera remplacé juste avant la compilation par 50. Donc, ton compilateur verra "50 = 30", ce qui est illégal. Et boum, une erreur de compilation.

      En général, évite d'utiliser le préprocesseur. D'ailleurs, si tu veux modifier la longueur en cours de route, alors ce n'est pas une constante que tu veux. Probablement une variable de classe privée avec un accesseur public..
      • Partager sur Facebook
      • Partager sur Twitter

      Modification d'un #define

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown