这是delphi Berlin下的TSysCharSet声明
TSysCharSet = set of Char deprecated; // Holds Char values in the ordinal range of 0..255 only.
它现在已被弃用,但取而代之的是什么?我只需要为我的函数提供一些像['',#9,#13,#10]这样的字符集
答案 0 :(得分:2)
如果您只需携带一组(unicode)字符,那么您就不需要TSysCharSet。只需使用char的动态数组:
var
MyCharArray : TArray<char>;
begin
MyCharArray := [' ',#9,#13,#10];
end;
TSysCharSet主要用于CharInSet例程;在文档中,它们引用TCharHelper作为CharInSet的替代,因为TSysCharSet不能包含unicode字符。
uses System.Character;
var
WhiteSpace : TSysCharSet;
ac : ansichar;
c : char;
begin
// replace this....
ac := #9;
WhiteSpace := [' ',#9,#13,#10];
if CharInSet(ac, WhiteSpace) then
begin
end;
// ...with this:
c := #9;
if c.IsWhiteSpace then
begin
end
end