两个问题请教了:
1、一个Class中的Feild是一个对象,如何获得从外部获得的副本,或者这样的行为就是非法的。
比如:
Ta = class
private
b : TStrings;
public
....
外部程序如何获得b的副本,还是就是不允许的。2、有这样的警告是什么原因导致的,不知道是不是因为继承了TObject,但是destroy函数override的不符合要求。
Method 'Destroy' hides virtual method of base type 'TObject'
1、一个Class中的Feild是一个对象,如何获得从外部获得的副本,或者这样的行为就是非法的。
比如:
Ta = class
private
b : TStrings;
public
....
外部程序如何获得b的副本,还是就是不允许的。2、有这样的警告是什么原因导致的,不知道是不是因为继承了TObject,但是destroy函数override的不符合要求。
Method 'Destroy' hides virtual method of base type 'TObject'
>>Method 'Destroy' hides virtual method of base type 'TObject'.destructor Destroy override;要加個 override;
比如
Ta = class
private
b : TString;
public
...Tb =Class
private
a : String;
public
procedure copyb;
implementation
procedure copyb;
var
i: integer;
begin
a := b.string[i]; // b可以不用定义,直接使用吗??
end;
同样一个问题,就是如果
a, b: TStrings;a, b之间可以互相拷贝吗
比如 a := b;
在C++中,有copy constructor,delphi中如何应付这样的问题。
如果我的概念有什么不对的地方,请赐教!谢谢!