Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Direktiven #ifdef och #ifndef förprocessorerna har samma effekt som #if direktivet när det används med operatorn defined .
Syntax
#ifdefidentifier
#ifndefidentifier
Dessa direktiv motsvarar:
#if definedidentifier
#if !definedidentifier
Remarks
Du kan använda direktiven #ifdef och #ifndef var som helst #if kan användas. -instruktionen #ifdefidentifier motsvarar #if 1 när identifier har definierats. Det motsvarar #if 0 när identifier som inte har definierats eller har definierats #undef av direktivet. Dessa direktiv kontrollerar endast förekomsten eller frånvaron av identifierare som definierats med #define, inte för identifierare som deklarerats i C- eller C++-källkoden.
Dessa direktiv tillhandahålls endast för kompatibilitet med tidigare versioner av språket. Det defined(identifier) konstanta uttryck som används med #if direktivet är att föredra.
Direktivet #ifndef kontrollerar motsatsen till det villkor som kontrolleras av #ifdef. Om identifieraren inte har definierats, eller om dess definition har tagits bort med #undef, är villkoret sant (nonzero). Annars är villkoret falskt (0).
Microsoft-specifik
Identifieraren kan skickas från kommandoraden med hjälp av alternativet /D . Upp till 30 makron kan anges med /D.
Direktivet #ifdef är användbart för att kontrollera om en definition finns, eftersom en definition kan skickas från kommandoraden. Ett exempel:
// ifdef_ifndef.CPP
// compile with: /Dtest /c
#ifndef test
#define final
#endif
Avsluta Microsoft Specifik