类的Create方法嵌套调用自身的Create方式有没有问题?
例:
TMyClass = class;
private
MyArr : Array[0..4] of TMyClass;
......
public
......
Constructor Create;Overload;
End;Constructor TMyClass.Create;
var
i:Integer;
begin
inherited Create;
for i:=0 to Length(MyArr)-1 do
MyArr[i].Create;
end;
例:
TMyClass = class;
private
MyArr : Array[0..4] of TMyClass;
......
public
......
Constructor Create;Overload;
End;Constructor TMyClass.Create;
var
i:Integer;
begin
inherited Create;
for i:=0 to Length(MyArr)-1 do
MyArr[i].Create;
end;
不会造成死循环啊,调用的是 TObject 的构造函数 而不是自身的。因为对于类声明来说,如果没有定义祖先类,那么他的祖先类就是TObject,如果不加 inherited 的话,就是 无穷第归了。