所以,我正在寻找实施下一件事的正确方法。 举个例子,我有任何父类。我正在存储作为该父类对象的变量。
我想有条件地创建这个子类的变量对象。
我知道如何用其他方式实现以下内容(仅因为这里有很多方法),但我想要好方法,所以我的代码看起来像那样
TObject obj;
if something = 1 then
obj := Child1;
else if something = 2 then
obj := Child2;
最后,在我的任务中,我想调用一些属于父类的函数,并且可以(或不)在子类中实现。
UPD:
我自己找到最好的解决方案(据我所知)看起来像:
var obj : TParent;
case something of
1: obj := TChild1.Create;
2: obj := TChild2.Create;
答案 0 :(得分:1)
使用返回正确子项的方法创建对象。
答案 1 :(得分:1)
使用面向对象的原则。您将拥有一个父类,以及一些继承自父级的子类。使用覆盖子特定变量和功能。如果存在适用于所有子类或父类的功能,则在父级中实现此功能。