Scripting: Preprocessor Directives – Arma Reforger
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Some wiki formatting) |
Lou Montana (talk | contribs) m (Add Scripting: Preprocessor Macros link) |
||
Line 4: | Line 4: | ||
For use cases, see e.g {{Link|Arma Reforger:Scripting Temporary Feature|Scripting Temporary Feature}}. | For use cases, see e.g {{Link|Arma Reforger:Scripting Temporary Feature|Scripting Temporary Feature}}. | ||
{{Feature|informative|See also {{Link|Arma Reforger:Scripting: Preprocessor Macros}}.}} | |||
{{Clear}} | {{Clear}} | ||
{| class="wikitable valign-top" | {| class="wikitable valign-top" |
Latest revision as of 16:01, 30 June 2024
Preprocessor directives allow to determine preprocessor behaviour, e.g ignoring blocks of code depending on certain conditions.
For use cases, see e.g Scripting Temporary Feature.
Directive | Description | Example |
---|---|---|
#define |
Define a flag. A flag is either defined or not. | #define MY_FLAG |
#ifdef |
Open a preprocessor scope that is considered if the provided flag is defined. The scope must be ended by #endif (see below). | #define MY_FLAG
#ifdef MY_FLAG
Print("Flag is defined");
#endif |
#ifndef |
Open a preprocessor scope that is considered if the provided flag is not defined. The scope must be ended by #endif (see below). | #define MY_FLAG
#ifndef MY_FLAG
Print("Flag is not defined");
#endif |
#else |
Add a preprocessor scope that is of the opposite condition of the current #ifdef/#ifndef. The scope must be ended by #endif (see below). | #ifdef MY_FLAG
Print("Flag is defined");
#else
Print("Flag is not defined");
#endif |
#endif |
Close a preprocessor scope - see #ifdef and #ifndef above. | See #ifdef and #ifndef above. |
#include |
Include another file. The effect is as if the other file's content was copy-pasted at this exact #include location. | class SCR_ScriptedClass
{
#include "scripts/Game/FileToInclude.c"
void ShowMessage()
{
Print(MY_PRINT);
}
} |