所以我有一个像这样的常数字符:
const spCh:array[#1..#4]of char=('\','%','{','}');
我还需要一个包含数组中所有元素的集合,所以我这样做:
var h:char; spChrz:set of char;
...
spChrz:=[];
for h:=#1 to #4 do spChrz:=spChrz+[spCh[h]];
是否有可能以某种方式定义const数组的常量集?
答案 0 :(得分:6)
没有。数组总是类型常量,类型常量不能用于定义其他类型的常量,例如你的集合。
请注意,按照您提议的方式定义的集合没有性能优势。类型化常量的访问方式与普通变量相同,因此您可以保留在运行时从数组初始化集合的代码。
答案 1 :(得分:0)
试试这个:
const spChz:set of char=['\','%','{','}'];