Identifier Rules
Naming conventions for FreeBASIC symbols.
An identifier is a symbolic name which uniquely identifies a variable, Type, Union, Enum, Function, Sub, or Property, within its scope or Namespace.
Identifiers may contain only uppercase and lowercase Latin characters a-z and A-Z), digits (0-9), and the underscore character (_). The first character of an identifier must be a letter or underscore, not a digit.
Identifiers are case-insensitive: FOO and foo (and all other permutations of uppercase and lowercase) refer to the same symbol.
In the -lang qb and -lang fblite dialects, identifiers may have a type suffix at the end indicating one of the standard data types:
The use of these symbols is generally discouraged in and is not allowed in the -lang fb dialect (the default).
The alternative is to be explicit - for example, Dim As Integer foo or Dim foo As Integer instead of Dim foo%.
In the -lang qb and -lang fblite dialects, identifiers may contain one or more periods (.).
Description
An identifier is a symbolic name which uniquely identifies a variable, Type, Union, Enum, Function, Sub, or Property, within its scope or Namespace.
Identifiers may contain only uppercase and lowercase Latin characters a-z and A-Z), digits (0-9), and the underscore character (_). The first character of an identifier must be a letter or underscore, not a digit.
Identifiers are case-insensitive: FOO and foo (and all other permutations of uppercase and lowercase) refer to the same symbol.
In the -lang qb and -lang fblite dialects, identifiers may have a type suffix at the end indicating one of the standard data types:
The use of these symbols is generally discouraged in and is not allowed in the -lang fb dialect (the default).
The alternative is to be explicit - for example, Dim As Integer foo or Dim foo As Integer instead of Dim foo%.
In the -lang qb and -lang fblite dialects, identifiers may contain one or more periods (.).
Dialect Differences
- Periods in symbol names are only supported in the -lang qb and -lang fblite dialects.
Differences from QB
- Support for the underscore character (_) in symbol names is new to FreeBASIC.
See also