如何动态建立一个类的实例?(200分)

  • 主题发起人 主题发起人 zfine
  • 开始时间 开始时间
Z

zfine

Unregistered / Unconfirmed
GUEST, unregistred user!
[:(]对于一个封装好的类,动态的生成该类的一个实例容易,可要生成很多那?
 
vat
ObjList: array [1..100] of TYouObj;
i: integer;
begin
for i := 1 to 100 do
begin
ObjList = TYouObj.create(...) [red]//看你的create是怎么写的了[/red]
end;
end;
 
Type
Tmyform = class(TForm)
...
public
class function ...: ...;
end
 
yxyyyy你好!还有一个问题。。。array [1..100] of TYouObj;最多可以创建100个实例,
能不能没有限制那?谢谢。
 
vat
ObjList: TList;
i: integer;
begin
ObjList := TList.Create;
for i := 1 to 100 do
ObjList.Add(TYouObj.create(...));
end;

引用时
TYouObj(ObjList).YourMethod
 
要没有限制的话我们可以用动态数组来实现
procedure CreatObj(value: integer);
vat
ObjList: array of TYouObj;
i: integer;
begin
SetLength(ObjList, value);
for i := 0 to value - 1 do
begin
ObjList = TYouObj.create(...) //看你的create是怎么写的了
end;
end;
 
多人接受答案了。
 
后退
顶部