#include
<iostream>
#include <iostream>
using namespace std;
class base0
{
public:
virtual void fun0a() = 0;
protected:
int var1a;
};
class base1:public base0
{
public:
void fun0a()
{
cout<<"base1 inheritance from base0"<<endl;
}
void fun1a();
protected:
int var1a;
};
class base2:public base0
{
public:
void fun0a()
{
cout<<"base2 inheritance from base0"<<endl;
}
void fun2a();
protected:
int var2a;
};
class base3:public base1,public base2
{
public:
void fun3a()
{
cout<<"base2 inheritance from base1 and base2"<<endl;
};
protected:
int var3a;
};
int main()
{
base0 *Ba0;
base3 ba1;
Ba0 = &ba1;
//Ba0->fun0a();
return 0;
}
g++ -Wall -c "const_initial.cpp" (在目錄 E:\1_MYPROJECT\cTest\keyword 中)
const_initial.cpp: In function 'int main()':
const_initial.cpp:48:12: error: 'base0' is an ambiguous base of 'base3'
編譯失敗。