unit1中定义了类TA
type
TA=class
public
val:integer;
end;
unit2中引用unit1并定义了类TB
type
TB=class
public
arr:array[1..10] of TA
end;我在实力化TB后,
B:=TB.create请问为什么不能直接使用 b.arr[1].val:=1;
而还要 arr[1]:=TA.create 一下?如何让tb实例化后,arr[1],arr[2]....可以直接使用?
否则我还要实例化10个 arr[x] 。初学delphi,问很弱智的问题,高手们指教!
type
TA=class
public
val:integer;
end;
unit2中引用unit1并定义了类TB
type
TB=class
public
arr:array[1..10] of TA
end;我在实力化TB后,
B:=TB.create请问为什么不能直接使用 b.arr[1].val:=1;
而还要 arr[1]:=TA.create 一下?如何让tb实例化后,arr[1],arr[2]....可以直接使用?
否则我还要实例化10个 arr[x] 。初学delphi,问很弱智的问题,高手们指教!
var
i:integer;
begin
for i:=1 to 10 do
arr[i]:=TA.Create;
.
.
.
end;
多谢大家。
--多谢大家。你还是好好看看书吧!!!!!!!!!!!
----------你看Tmemo的构造函数了吗?就开始说TString没有实例化///////
如何实力化tb后,关于a的数组可以直接用,而不用再用代码手工实例化ta的?
多谢大家。
/////delphi中的类对象必须先Create后使用,所以,如果你定义的类里面有类对象,必须在构造函数当中调用它们的构造函数,否则将会在使用过程中出现内存读取错误,而且在西沟函数中要释放那些创建了的对象...
unit1中定义了类TA
type
TA=class
public
val:integer;
end;
unit2中引用unit1并定义了类TB
type
TB=class
public
arr:array[1..10] of TA;
constructor create;
end;
......
constructor TB.create;
var i:integer;
begin
for i:= 1 to 10 do
arr[i]:= TA.create;
end;
这样以后就要吧直接用了。
挣大钱娶美女.
----------------老大好像对我的ID比较感兴趣...hehe