对象方法的继承(50分)

  • 主题发起人 主题发起人 ibear
  • 开始时间 开始时间
I

ibear

Unregistered / Unconfirmed
GUEST, unregistred user!
在bcb,有何法来达到delphi中的inherited关键字一样的效果,
即子类中的某个方法中,如果父类中实现了该方法,
就在什用该关键字的地方调用该方法;如果没有就照常执行。
 
在VC中是这样的,调用基类的相同方法:
MyClass::Method(...)
{
.......
CBaseClass::Method(....);
.......
}
 
楼上回答的对,在子类方法中调用父类的方法
一般的c++书上的必将内容呀
 
在delphi中:
procedure TSomeClass.SomeMothed;
begin
...
inherited;
...
end;
当TSomeClass的基类中实现了该方法的话,将在inherited处调用该方法;否则就忽略。
但在c++中:
void TSomeClass::SomeMothed(void)
{
...
TBaseClass::SomeMothed();
...
}
如果基类中实现了该方法的话,没问题;
但要是基类中没有实现该方法,上述代码显然连编译也不能通过的,
因此问题的关键是如何在c++(BCB)中实现delphi的继承方式!
 
基类没有实现该方法,你当然不能调用。
再说基类没有实现,何谓“继承”?
基类没有该方法,你就写自己的代码,也可以调用其它的基类方法。
 
关键就在于此,如何达到DELPHI中的智能继承的方式
 
后退
顶部