Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Directiva de preprocesador que asigna un nombre descriptivo a una constante de la aplicación.
| #define identifiertoken-string |
|---|
Parámetros
| Elemento | Descripción |
|---|---|
|
Identificador |
Identificador de la constante. |
|
token-string [opcional] |
Valor de la constante. Este parámetro consta de una serie de tokens, como palabras clave, constantes o instrucciones completas. Uno o varios caracteres de espacio en blanco deben separar este parámetro del parámetro de identificador ; este espacio en blanco no se considera parte del texto sustituido, ni es ningún espacio en blanco después del último token del texto. Si excluye este parámetro, todas las instancias del parámetro de identificador se quitan del archivo de origen. El identificador permanece definido y se puede probar mediante las directivas #if definidas, #ifdef y #ifndef. |
Comentarios
Todas las instancias del parámetro identifier que se producen después de la directiva #define en el archivo de origen se reemplazarán por el valor del parámetro token-string . El identificador solo se reemplaza cuando forma un token; por ejemplo, el identificador no se reemplaza si aparece en un comentario, dentro de una cadena o como parte de un identificador más largo.
La directiva #undef indica al preprocesador que olvide la definición de un identificador; para obtener más información, vea #undef Directiva (DirectX HLSL).
La definición de constantes con la opción del compilador /D tiene el mismo efecto que el uso de la directiva #define al principio del archivo. Se pueden definir hasta 30 constantes con la opción /D. Para obtener un ejemplo de cómo se puede usar, consulte la sección Ejemplos de #ifdef y ).
Ejemplos
En el ejemplo siguiente se define el identificador WIDTH como la constante de entero 80 y, a continuación, se define LENGTH en términos de WIDTH y la constante entero 10.
#define WIDTH 80
#define LENGTH ( WIDTH + 10 )
Cada instancia posterior de LENGTH se reemplaza por (WIDTH + 10) y cada instancia posterior de WIDTH + 10 se reemplaza por la expresión (80 + 10). Los paréntesis alrededor de WIDTH + 10 son importantes porque controlan la interpretación en instrucciones como las siguientes.
var = LENGTH * 20;
Después de la fase de preprocesamiento, la instrucción se convierte en la siguiente, que se evalúa como 1800.
var = ( 80 + 10 ) * 20;
Sin paréntesis, el resultado sería el siguiente, que se evalúa como 280.
var = 80 + 10 * 20;