template <typename T>class A
{
friend T;
private:
A(){}
~A(){}
};
class B:virtual public A<B>
{
public:
B(){}
~B(){}
};
class C:virtual public B
{
public:
C(){}
~C(){}
};
void main()
{
B b;
//C c;
return;
}
构造函数是继承实现的关键,每次子类对象构造时,首先调用的是父类的构造函数,然后才是自己的构造函数。