Sdílet prostřednictvím


#ifdef a #ifndef směrnic (C/C++)

#Ifdef a #ifndef směrnic provést stejný úkol jako #if směrnice, pokud je použit společně s definované( identifikátor ).

#ifdef identifier
#ifndef identifier

// equivalent to
#if defined identifier
#if !defined identifier

Poznámky

Můžete použít #ifdef a #ifndef směrnic kdekoli #if lze použít.#Ifdefidentifikátor příkaz je ekvivalentní #if 1 při identifikátor definována, a je ekvivalentní #if 0 při identifikátor není definován nebo má byla undefined s #undef směrnice. Tyto direktivy zkontrolovat pouze přítomnost nebo nepřítomnost identifikátory definované s #define, nikoli pro identifikátory deklarované v c nebo C++ zdrojový kód.

Tyto směrnice jsou poskytovány pouze pro kompatibilitu s předchozími verzemi jazyka.Definované (identifikátor) konstantní výraz se používá #if směrnice je upřednostňována.  

#Ifndef kontroluje směrnice opačnou podmínku zkontroloval #ifdef.Pokud nebyl definován identifikátor (nebo jeho definice byla odebrána s #undef), podmínka je PRAVDA (nenulové).Jinak je podmínka NEPRAVDA (0).

Konkrétní společnosti Microsoft

Identifikátor z příkazového řádku pomocí možnosti /D lze předat.Až 30 makra pomocí parametru /D.

To je užitečné pro kontrolu, zda existuje definice, protože definice může být předán z příkazového řádku.Příklad:

// ifdef_ifndef.CPP
// compile with: /Dtest /c
#ifndef test
#define final
#endif

Konec konkrétní společnosti Microsoft

Viz také

Referenční dokumentace

Direktivy preprocesoru