Partager via


Macros et C++

C++ offre de nouvelles fonctions, dont certaines supplantez ceux proposés par le préprocesseur C ANSI.Ces nouvelles fonctions d'améliorer la sécurité de type et la prévisibilité du langage :

  • En C++, les objets déclarés comme const peuvent être utilisés dans les expressions constantes.Cela permet aux programmes de déclarer des constantes qui ont des informations de type/valeur, et des énumérations qui peuvent être affichées symboliquement à l'aide de le débogueur.Utilisation de la directive d' #define de préprocesseur définir des constantes n'est pas aussi précis.Aucun stockage n'est alloué à un objet de const à moins qu'une expression qui prend son adresse est trouvée dans le programme.

  • La fonction de fonction inline C++ supplante les macros de fonction-type.Les avantages de l'utilisation des fonctions inline sur les macros sont les suivants :

    • Sécurité de type.Les fonctions inline sont soumises à la même vérification de type que les fonctions normales.Les macros ne sont pas de type sécurisé.

    • corrigez la gestion des arguments qui ont des effets secondaires.Les fonctions inline évaluent les expressions fournies comme arguments avant de créer le corps de la fonction.Par conséquent, il n'y a aucun risque d'une expression avec des effets secondaires est potentiellement dangereuse.

Pour plus d'informations sur les fonctions inline, consultez l' inline, __inline, __forceinline.

Pour la compatibilité descendante, toutes les fonctions de préprocesseur qui existaient en C ANSI et dans les caractéristiques précédemment C++ sont conservés pour Microsoft C++.

Voir aussi

Référence

Macros prédéfinies

Macros (C/C++)