這是來回多重繼承 的鑽石樹問題的一個代碼,並根據我這個代碼是很酷,但它顯示在編譯 ..help我一些錯誤推測錯誤爲什麼輸出顯示錯誤
#include<iostream>
using namespace std;
class A //A Diamond tree problem
{
int x;
public:
A(int i) { x = i; }
void print() { cout << x; }
};
class B: virtual public A
{
public:
B():A(10) { }
};
class C: virtual public A
{
public:
C():A(20) { }
};
class D: public B, public C{
};
int main()
{
D d;
d.print();
return 0;
}
你得到的錯誤是什麼? –
它給出了一個錯誤,因爲'A'需要一個默認的構造函數。 **或**你需要添加一個構造函數到調用'A'構造函數的'D'。 –