子类继承的变量的命名从根本上看是带有父类命名空间的

 
#include <iostream>

using namespace std;

class A
{
public:
    int n;
};
class B: public A { };
class C: public A { };
class D: public B, public C { };
int main()
{
    D d;
    d.B::n=10;
    d.C::n=20;
    cout << d.B::n << "," << d.C::n << endl;
    B b;
    b.A::n=101;
    cout << b.A::n << endl;
}

 

结果为

10,20

101

主要考核多继承的基本概念和内存布局知识(子类继承的变量的命名从根本上看是带有父类的命名空间的),可以引申出虚基类的必要性。

posted @ 2016-10-12 09:27  bonelee  阅读(1363)  评论(0编辑  收藏  举报