您在常见的Delphi编程中实现了哪些设计模式?在Delphi编程中哪些模式更容易适应?(每种语言在不同领域都很出色,那么使用Delphi时哪些模式可能是非常强大的结构?)
我很高兴,如果你能说出Delphi 2009/2010的设计模式的一些变化(因为那些支持泛型,以及2010年的RTTI).
在野外互联网上有很多文章,但它们没有讨论日常可用性和模式的变化.(他们中的大多数只讨论语言细节,架构的变化).
我只是想问一个简单的问题 - 我有一个派生自TLabel的类如下:
TMyLabel = class (TLabel)
...
constructor Create(AOwner: TComponent); override;
end;
constructor TMyLabel.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
{ some code }
end;
Run Code Online (Sandbox Code Playgroud)
现在,Delphi允许我使用和不使用覆盖来编译两个版本.你能解释一下这些差异是什么吗?除了在被覆盖Create()时无法请求我自己的参数.谢谢
编辑:我的意思是 - a virtual和非虚拟基础后代构造函数之间的区别是什么?我总是可以调用继承的构造函数inherited Create(),那有什么意义呢?
在浏览我的一个代码时,我被困在一个声明中,如下所示.
TMyObjectClass = class of TMyObject;
我有点困惑,想知道这句话是什么意思.由于TMyObjectClass声明上方没有声明.
并且TMyObject声明如下:
TMyObject = class(TObject)
private
//some private member declaration
Public
// some public variables
end;
所以,我的问题是声明的含义是什么
TMyObjectClass = class of TMyObject;
以及如何TMyObjectClass运作?
我对Delphi有点新意,所以请帮助我了解这些类型的声明和解决方法.