/D (definizioni preprocessore)
Aggiornamento: novembre 2007
Definisce un simbolo di pre-elaborazione per il file di origine.
/Dname[= | # [{string | number}] ]
Note
È possibile utilizzare questo simbolo con #if o #ifdef per compilare il file di origine in base a determinate condizioni. La definizione del simbolo rimane valida fino a quando nell'origine non viene riscontrata una ridefinizione o la definizione del simbolo non viene rimossa dall'origine con la direttiva #undef.
/D produce lo stesso effetto che si ottiene utilizzando la direttiva #define all'inizio del file di origine, con la differenza che /D rimuove le virgolette nella riga di comando, mentre #define le mantiene.
Per impostazione predefinita, il valore associato a un simbolo è 1. Ciò significa che /DTEST equivale a /DTEST=1. Nell'esempio riportato di seguito viene illustrato come la definizione di TEST imposti la stampa di 1.
La compilazione con /Dname= impedisce al simbolo di avere un valore associato. Sebbene possa comunque essere utilizzato per la compilazione di codice in base a determinate condizioni, in caso contrario il simbolo non equivale a nessun valore. Ad esempio, nel programma di esempio la compilazione con /DTEST= causa un errore di compilazione. Questo comportamento è analogo all'utilizzo di #define con o senza un valore.
Il comando che segue definisce il simbolo DEBUG in TEST.c:
CL /DDEBUG TEST.C
Il comando riportato di seguito rimuove tutte le occorrenze della parola chiave __far in TEST.c:
CL /D__far= TEST.C
Non è possibile impostare la variabile di ambiente CL in una stringa che contiene un segno di uguale. Per utilizzare /D con la variabile di ambiente CL, è necessario specificare un segno numerico anziché un segno di uguale:
SET CL=/DTEST#0
Per impostare l'opzione del compilatore nell'ambiente di sviluppo di Visual Studio
Aprire la finestra di dialogo Pagine delle proprietà del progetto. Per informazioni dettagliate, vedere Procedura: aprire le pagine delle proprietà dei progetti.
Fare clic sulla cartella C/C++.
Fare clic sulla pagina delle proprietà Preprocessore.
Modificare la proprietà Definizioni preprocessore.
Per impostare l'opzione del compilatore a livello di codice
- Vedere la proprietà PreprocessorDefinitions.
Esempio
// cpp_D_compiler_option.cpp
// compile with: /DTEST
#include <stdio.h>
int main( )
{
#ifdef TEST
printf_s("TEST defined %d\n", TEST);
#else
printf_s("TEST not defined\n");
#endif
}
TEST defined 1
Vedere anche
Riferimenti
Impostazione delle opzioni del compilatore