#include<iostream>
/*
通过友缘和虚继承实现。
在继承层次中,先构造虚基类,可是虚基类A,只能由B来进行构造,也就是说B这个类不能被继承
注意B的声明必须放到A的前面。
*/
using namespace std;
class B;
class A
{
private:
A()
{};
friend class B;
};
class B : virtual public A
{
public:
B():A()
{}
};
class C : public B
{
public:
C():B()
{}
};