71 votes

Pourquoi utiliser #define au lieu d'une variable

Quel est l'intérêt de #define en C++ ? Je n'ai vu que des exemples où il est utilisé à la place d'un "nombre magique", mais je ne vois pas l'intérêt de simplement donner cette valeur à une variable à la place.

8voto

Puppy Points 90818

#define peut accomplir certaines tâches que le C++ normal ne peut pas effectuer, comme la protection des en-têtes et d'autres tâches. Cependant, il ne devrait certainement pas être utilisé comme un nombre magique - un const statique devrait être utilisé à la place.

7voto

nbt Points 15965

C n'avait pas l'habitude d'avoir des constantes, donc #defines était le seul moyen de fournir des valeurs constantes. C et C++ les ont tous les deux maintenant, il n'y a donc aucun intérêt à les utiliser, sauf lorsqu'ils vont être testés avec #ifdef/ifndef.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X