Identifier: Difference between revisions
Jump to navigation
Jump to search
m (→Rules: are case-insensitive) |
m (→Rules) |
||
Line 10: | Line 10: | ||
* _my_local_variable | * _my_local_variable | ||
* _1variable | * _1variable | ||
* _player | |||
| | | | ||
* <span style="color: red">1</span>variable | * <span style="color: red">1</span>variable | ||
* _my<span style="color: red">#</span>localVar | * _my<span style="color: red">#</span>localVar | ||
* _guy1<span style="color: red">&</span>2var | * _guy1<span style="color: red">&</span>2var | ||
* <span style="color: red">player</span> | |||
|} | |} | ||
Binding rules for identifiers: | Binding rules for identifiers: | ||
* Identifiers may consist of any ASCII text characters (a-z, A-Z), numbers (0-9) and underscores (_) | * Identifiers may consist of any ASCII text characters (a-z, A-Z), numbers (0-9) and underscores (_) | ||
* Identifiers '''must not''' start with a number (e.g "9myVariable" is invaild) | * Identifiers '''must not''' start with a number (e.g "9myVariable" is invaild) | ||
* Identifiers of [[Variables|local variables]] '''must''' start with an underscore | * Identifiers of user-defined [[Variables|local variables]] '''must''' start with an underscore | ||
* Identifiers are '''case-insensitive'''. | * Identifiers are '''case-insensitive'''. | ||
* Identifiers '''cannot be the same with reserved words''' (e.g [[All_Arma_Commands_Pages|commands]] and [[:Category:Functions|functions]]). | |||
== Recommendations == | == Recommendations == |
Revision as of 15:18, 9 November 2019
An identifier is a name given to a variable that the scripter can choose: It is the name that identifies the variable.
Rules
Valid | Invalid |
---|---|
|
|
Binding rules for identifiers:
- Identifiers may consist of any ASCII text characters (a-z, A-Z), numbers (0-9) and underscores (_)
- Identifiers must not start with a number (e.g "9myVariable" is invaild)
- Identifiers of user-defined local variables must start with an underscore
- Identifiers are case-insensitive.
- Identifiers cannot be the same with reserved words (e.g commands and functions).
Recommendations
It is recommended to write private variable identifiers in camel case syntax. This makes identifiers more readable:
private _myVariableName = 5;
It is also recommended to prefix public variable identifiers with your tag in order to avoid any potential conflict between addons, scripts and missions:
// Tag_identifier
UNIQUETAG_player = player;
A less encountered naming format is separating all sub-words with underscores:
_my_variable_name = 5;