Quando si utilizza una dichiarazione come #if TRUE
, cosa devo aspettarmi che accada? Una spiegazione sarebbe molto apprezzata! Capisco come funziona #if 1
, ma dà un risultato COMPLETAMENTE diverso nel mio codice rispetto all'utilizzo di #if TRUE
. Capisco che #if
è una direttiva condizionale e cosa implica; è solo la parte TRUE
(o FALSE
) che non capisco. Sembra che utilizzarlo in questo modo non esegua mai il codice seguendo la dichiarazione. Ecco un esempio:C++, utilizzando la direttiva condizionale #if TRUE
#if TRUE
cout << "true" << endl;
#endif
#if FALSE
cout << "false" << endl;
#endif
non ho mai sembra di vedere "vero" o "falso" stampato a schermo e utilizzando Visual Studio, l'istruzione interna è in grigio automaticamente.
Basta testare se vengono dichiarate le macro. Solitamente in WinDef.h sono dichiarati per essere usati con BOOL. –
"TRUE" non è una parola riservata? – Hieli
No, è solo una macro dichiarata con #define win Winefef.h (consultare http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751(v=vs.85).aspx). La parola riservata è "true" (minuscolo). –