In VEXcode IQ Blocks, you are required to give a name to a new variable when you create one. You also have the option to change a device’s name in the Robot Configuration.
The following article will cover:
- Valid Name Rules
- Possible Name Errors
Valid Name Rules
Variable names must be unique, but there are other specifications that the name must follow.
Variable names are used in the following places:
- Device (created using Robot Configuration)
- Numeric (created using “Make variable”)
- Boolean (created using “Make a boolean”)
- List (created using “Make a List”)
- 2D List (created using “Make a 2D List”)
Here is an overview of the criteria when choosing a valid name:
- The name cannot use special characters.
- The name has to begin with a letter. It cannot start with a number.
- The name cannot use spaces.
- The name cannot be a reserved word in VEXcode. A reserved word is a word or name that VEXcode is already using. Examples: vex, Brain, time, for, while, break, else, not.
- The name has to be unique (only used once), but you can have different cases (one uppercase and one lowercase).
Possible Name Errors
When you create a variable name, if you see a “Name Taken” error, it means there is a duplicate name in any of the groups above.
You may encounter a case when opening a project made in an earlier version of VEXcode IQ Blocks that has a duplicate variable name. This will cause an error when compiling and you will see the following type of error message:
The error message above shows the following problems:
- The name “myvariable” was found as a numeric variable and a boolean variable.
- The name “awesomeVar” was found as a numeric variable and a boolean variable.
To resolve the error, one of the duplicates will need to be removed or changed so they are unique.