我有这样一行代码:
const
MY_SET: set of WideChar = [WideChar('A')..WideChar('Z')];
上述代码无法编译,出现以下错误:
[错误] 集合最多只能有256个元素
但是下面这行代码可以成功编译:
var WS: WideString;
if WS[1] in [WideChar('A')..WideChar('Z')] then...
这也可以正常编译:
const
MY_SET = [WideChar('A')..WideChar('Z'), WideChar('a')..WideChar('z')];
...
if WS[1] in MY_SET then...
为什么会这样呢?
编辑:我的问题是为什么if WS [1] in [WideChar ('A')..WideChar ('Z')]
编译通过?而且为什么MY_SET = [WideChar('A')..WideChar('Z'), WideChar('a')..WideChar('z')];
也能编译通过?它们不也需要遵循set
的规则吗?