const
我在 Inno Setup 的代码部分下定义字符串数组时遇到了一些问题,我有以下内容:
[Code]
const
listvar: array [0..4] of string =
('one', 'two', 'three', 'four', 'five');
这就是说我需要一个=
where the :
is,但是我不能将它定义为一个数组。
const
我在 Inno Setup 的代码部分下定义字符串数组时遇到了一些问题,我有以下内容:
[Code]
const
listvar: array [0..4] of string =
('one', 'two', 'three', 'four', 'five');
这就是说我需要一个=
where the :
is,但是我不能将它定义为一个数组。
不久前我做了一个小实用函数。它不允许您在常量上分配数组,但它可以为单行中的变量解决问题。希望这有帮助。
你可以这样使用它:
listvar := Split('one,two,three,four,five', ',');
{ ============================================================================ }
{ Split() }
{ ---------------------------------------------------------------------------- }
{ Split a string into an array using passed delimeter. }
{ ============================================================================ }
Function Split(Expression: String; Separator: String): TArrayOfString;
Var
i, p : Integer;
tmpArray : TArrayOfString;
curString : String;
Begin
i := 0;
curString := Expression;
Repeat
SetArrayLength(tmpArray, i+1);
If Pos(Separator,curString) > 0 Then
Begin
p := Pos(Separator, curString);
tmpArray[i] := Copy(curString, 1, p - 1);
curString := Copy(curString, p + Length(Separator), Length(curString));
i := i + 1;
End Else Begin
tmpArray[i] := curString;
curString := '';
End;
Until Length(curString)=0;
Result:= tmpArray;
End;