SYMBOL 类型是一个32位整数,表示字符串数组中的索引。
由于 SYMBOL 表示一个字符串,因此从 SYMBOL 到 STRING,以及从 STRING 到 SYMBOL 都有内置的隐式转换。
由于 SYMBOL 的基础值是整数,因此从 SYMBOL 到 DWORD,以及从 DWORD 到 SYMBOL 都有内置的显式转换。在执行显式转换时需要进行强制转换。
与 Visual Objects 不同,符号的数量不受可用内存或在另一个库中声明的符号的限制。
文字符号由 '#' 字符后跟一个或多个字母数字字符组成。第一个字符必须是字母或下划线。
以下是一些文字符号的示例:
#XSharp
#XSHARP
请注意,虽然文字符号可以用小写或大写字母指定,但它们表示的字符串在编译时会转换为大写,以与 Visual Objects 兼容。无法指定包含小写字母的文字符号,必须使用 StringToAtom() 函数。
编译器定义的常量 NULL_SYMBOL 可用于表示空符号,即没有关联字符串值的符号。
SYMBOL 类型在 XSharp.__Symbol 结构中实现。
SYMBOL 的 UsualType 值是 10。