程序如下:
var
a001:array[0..25] of byte;
a002:array[1..100] of byte;
......
a999:array[1..12] of byte;
if str = 'a001' then
处理a001数组;
if str = 'a002' then
处理a002数组;
......
if str = 'a999' then
处理a999数组;内容很多。请问变量名称怎样转化为数组名?或者其他的简化方法?
var
a001:array[0..25] of byte;
a002:array[1..100] of byte;
......
a999:array[1..12] of byte;
if str = 'a001' then
处理a001数组;
if str = 'a002' then
处理a002数组;
......
if str = 'a999' then
处理a999数组;内容很多。请问变量名称怎样转化为数组名?或者其他的简化方法?
functio ProcessArray(a:array of byte):boolean;
begin
//
end;function GetArray(str:string):boolean;
begin
ProcessArray(TArray(str)); //可不可以用什么方法转化一下:
end;
TMyArray = record
name: string;
A001: array of byte;
end;var
A: array[0..12] of TMyArray;procedure Init;
var
I: Integer;
begin
for I := Low(A) to High(A) do
begin
//...
end;
end;procedure ProcessArray(MyArray: array of byte);
begin
//
end;function GetArray(const AArrayName: string): boolean;
var
I: Integer;
begin
Result := False; for I := Low(A) to High(A) do
if A[I].name = AArrayName then
begin
Result := True;
ProcessArray(A[I].A001);
Break;
end;
end;
begin
case StrToInt(rightStr(aName,3)) of
1:
begin end;
2:
begin end;
3:
begin end;
.....
999:
begin end;
end;
end;