析构函数和构造函数。。。。 一个类最多可以有几个析构函数,析构函数和构造函数不太理解,郁闷ing....help 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 析构函数和构造函数都可以有任意多个,实现的方法就是重载。一般的,不少类都有多个构造函数,而析构函数通常只有一个(即Destroy)。一般的没有必要设计多个析构函数。因为,Destroy是TObject的虚拟方法,所有子类覆盖Destroy并实现新的处理;所有子类也继承TObject.Free,Free内部调用Destroy。因此对象实际销毁时,通常直接调用Free而不是Destroy实现。但是并不是说构造函数不可以有多个。比如: TMyClass = class destructor Destroy(Info: String); reintroduce; overload; end;var Form1: TForm1;implementation{$R *.dfm}destructor TMyClass.Destroy(Info: String);begin ShowMessage(Info); inherited Destroy;end;procedure TForm1.Button1Click(Sender: TObject);begin TMyClass.Create.Destroy('OK');end;————————————————————————————————————宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。———————————————————————————————————— 表合并问题 服务器端接收客户端发送的字符串应该怎么做?在线等。。。。。。。。。。。 想找Delphi程序员帮我弄个东西!有兴趣的加Q:842972 TClientDataSet 的简单问题? 简单的数据库问题 请问有没有画数据库中表之间关系的控件,谢谢!(在线等) 关于电子图章中文字环形问题处理??请指点?? 多线程,Microsoft speech sdk(SAPI5.1) 直接向当前光标处输出文字怎么实现? 一个问题,很实在,大家都会碰到 万分紧急,散分!在线等待! 使用BATCHMOVE把ACCESS或者EXCEL数据导入ORACLE???
一般的,不少类都有多个构造函数,而析构函数通常只有一个(即Destroy)。一般的没有必要设计多个析构函数。因为,Destroy是TObject的虚拟方法,所有子类覆盖Destroy并实现新的处理;所有子类也继承TObject.Free,Free内部调用Destroy。因此对象实际销毁时,通常直接调用Free而不是Destroy实现。但是并不是说构造函数不可以有多个。比如: TMyClass = class
destructor Destroy(Info: String); reintroduce; overload;
end;var
Form1: TForm1;implementation{$R *.dfm}destructor TMyClass.Destroy(Info: String);
begin
ShowMessage(Info);
inherited Destroy;
end;procedure TForm1.Button1Click(Sender: TObject);
begin
TMyClass.Create.Destroy('OK');
end;————————————————————————————————————
宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
————————————————————————————————————