Direttive preprocessore (HLSL)

Le direttive del preprocessore, ad esempio #define e #ifdef, vengono in genere usate per semplificare la modifica dei programmi di origine e semplificare la compilazione in ambienti di esecuzione diversi. Le direttive nel file di origine indicano al preprocessore di eseguire azioni specifiche. Ad esempio, il preprocessore può sostituire i token nel testo, inserire il contenuto di altri file nel file di origine o eliminare la compilazione di parte del file rimuovendo sezioni di testo. Le righe del preprocessore vengono riconosciute ed eseguite prima dell'espansione di una macro. Pertanto, se una macro si espande in modo da risultare simile a un comando del preprocessore, tale comando non sarà riconosciuto dal preprocessore.

Le istruzioni del preprocessore utilizzano lo stesso set di caratteri delle istruzioni del file di origine, con l'eccezione che le sequenze di escape non sono supportate. Il set di caratteri utilizzati nelle istruzioni del preprocessore equivale al set di caratteri di esecuzione. Il preprocessore riconosce anche i valori di carattere negativi.

Il preprocessore HLSL riconosce le direttive seguenti:

Il simbolo di cancelletto (#) deve essere il primo carattere non spazio vuoto sulla riga contenente la direttiva; gli spazi vuoti possono apparire tra il simbolo di cancelletto e la prima lettera della direttiva. Alcune direttive includono argomenti o valori. Qualsiasi testo che segue una direttiva (eccetto un argomento o un valore che fa parte di essa) deve essere preceduto dal delimitatore di commento a riga singola (//) o essere incluso tra delimitatori di commento (/* */). Le righe che contengono le direttive per il preprocessore possono essere continuate precedendo immediatamente il marcatore di fine riga con una barra rovesciata (\).

Le direttive del preprocessore possono essere visualizzate in qualsiasi punto di un file di origine, ma si applicano solo al resto del file di origine.

Appendice (DirectX HLSL)