eug*_*e2k 9 c++ inheritance overriding virtual-functions
标题可能令人困惑.
假设我们有以下设置;
class A
{
public:
virtual void fn() = 0;
};
class B
{
public:
virtual int fn() {};
};
class C: public A, public B
{
};
Run Code Online (Sandbox Code Playgroud)
有什么办法来定义A::fn的class C?
不。这不可能。它总是会与其中任何一个发生冲突fn()。
的语法fn()不同,
void fn(); // in A
Run Code Online (Sandbox Code Playgroud)
并且在B是,
int fn(); // in B
Run Code Online (Sandbox Code Playgroud)
您必须使这些语法与A和中的语法相同B才能C实现fn(). 演示。
| 归档时间: |
|
| 查看次数: |
1674 次 |
| 最近记录: |