Macro e C++

C++ offre le nuove funzionalità, alcune delle quali soppiantano quelle offerte dal preprocessore ANSI C.Queste nuove funzionalità migliorano l'indipendenza dai tipi e prevedibilità del linguaggio:

  • In C++, oggetti dichiarati come const può essere utilizzato in espressioni costanti.Ciò consente ai programmi dichiari le costanti che contengono informazioni di valore e il tipo e le enumerazioni che possono essere visualizzate token con il debugger.Utilizzando il preprocessore #define la direttiva per definire le costanti non viene creata.Non è allocata per un oggetto const oggetto a meno che un'espressione che accetta il relativo indirizzo non venga rilevata nel programma.

  • La funzionalità di funzione inline C++ soppianta le macro di funzione-tipo.Vantaggi delle funzioni inline sulle macro:

    • indipendenza dai tipi.Le funzioni inline sono soggetti allo stesso controllo dei tipi di funzioni normali.le macro non sono indipendenti dai tipi.

    • Correggere la gestione degli argomenti che hanno effetti collaterali.Le funzioni inline valutare le espressioni fornite come argomenti prima di registrare il corpo della funzione.Pertanto, non è probabile che un'espressione con gli effetti collaterali verrà pericolosa.

Per ulteriori informazioni sulle funzioni inline, vedere inline, __inline, __forceinline.

Per la compatibilità con le versioni precedenti, tutte le utilità del preprocessore presenti in ANSI c e le specifiche precedenti C++ vengono mantenute per Microsoft C++.

Vedere anche

Riferimenti

Macro predefinite

Macro (C/C++)