所以我有一个像这样的常量字符数组:
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 数组定义常量集?
最佳答案
没有。数组始终是类型常量,并且类型常量不能用于定义其他类型常量,例如您的集合。
请注意,按照您建议的方式定义的集合没有性能优势。类型常量的访问方式与普通变量相同,因此您也可以保留在运行时从数组初始化集合的代码。
关于arrays - Delphi 中常量数组的常量集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46130375/