能不能组合变量名、常量名?解决思路
能不能组合变量名、常量名??
举例:
像上面的函数 YY,如果 str_? 比较多的话,YY函数 就很长,能不能像下面这样:
procedure TForm1.YY(i:integer);
begin
Memo1.Lines.Add(str_i);//根据i的值,直接知道对应的 str_?,而不要用case语句
end;
或者有什么其他方便的做法?
问题比较奇怪,别见怪。
------解决方案--------------------
定义个数组嘛
------解决方案--------------------
是数组:
const
str:array [1..100] of string=(
'xxx'
,'xxx'
...
,'xxx'
);
procedure TForm1.YY(i:integer);
begin
Memo1.Lines.Add(str[i]);
end;
------解决方案--------------------
用数组最简单了,const str_arr: array [1..100] of string = ('XX1','XX2',...'XX10');
------解决方案--------------------
------解决方案--------------------
是数组:
const
str:array [1..100] of string=(
'xxx'
,'xxx'
...
,'xxx'
);
procedure TForm1.YY(i:integer);
begin
Memo1.Lines.Add(str[i]);
end;
就是这样啊,什么叫不能定义成动态?
举例:
- Delphi(Pascal) code
const str_1='XXX'; str_2='XXX'; str_3='XXX'; str_4='XXX'; ... str_100='XXX';//这里定义了100个 //我有一个函数 YY ,实现如下功能: procedure TForm1.YY(i:integer); begin case i of 1:Memo1.Lines.Add(str_1); 2:Memo1.Lines.Add(str_2); 3:Memo1.Lines.Add(str_3); ... 100:Memo1.Lines.Add(str_100); end; end;
像上面的函数 YY,如果 str_? 比较多的话,YY函数 就很长,能不能像下面这样:
procedure TForm1.YY(i:integer);
begin
Memo1.Lines.Add(str_i);//根据i的值,直接知道对应的 str_?,而不要用case语句
end;
或者有什么其他方便的做法?
问题比较奇怪,别见怪。
------解决方案--------------------
定义个数组嘛
------解决方案--------------------
是数组:
const
str:array [1..100] of string=(
'xxx'
,'xxx'
...
,'xxx'
);
procedure TForm1.YY(i:integer);
begin
Memo1.Lines.Add(str[i]);
end;
------解决方案--------------------
用数组最简单了,const str_arr: array [1..100] of string = ('XX1','XX2',...'XX10');
------解决方案--------------------
------解决方案--------------------
是数组:
const
str:array [1..100] of string=(
'xxx'
,'xxx'
...
,'xxx'
);
procedure TForm1.YY(i:integer);
begin
Memo1.Lines.Add(str[i]);
end;
就是这样啊,什么叫不能定义成动态?