2012-04-16 100 views
4

考虑一个简单的继承类:c + +延伸继承功能

class Base 
{ 
    void func() { 
    cout << "base" << endl; 
    } 
}; 

class Derived : public Base 
{ 
    void func() { 
     cout << "derived" << endl; 
    } 
}; 

,如果我跑衍生:: FUNC()我得到

derived 

我想修改这个代码来获取

base 
derived 

比延伸更类似于扩展的东西。

我已经能够得到与构造函数类似的东西,但与普通函数不同。

非常感谢, 卢西奥

+2

像这样:http://stackoverflow.com/questions/357307/c-how-to-call-a-parent-class-function-from-derived-class-function – dexametason 2012-04-16 16:17:54

回答

1

从派生类访问基类的功能,你可以简单地使用:

Base::func(); 

在你的情况,你会将此作为第一线派生实现func()

14
class Derived : public Base 
{ 
    void func() { 
     Base::func(); // Call the base method before doing our own. 
     cout << "derived" << endl; 
    } 
};