Возможно ли иметь виртуальное наследование для класса, не предоставляющего конструктор по умолчанию?
Настоящая диаграмма алмаза (самая простая с единственным изменением конструктора по умолчанию) не компилируется (g++ 4.4.3).
class A {
public:
A(int ) {}
};
class B : virtual public A {
public:
B(int i) : A(i) {}
};
class C : virtual public A {
public:
C(int i) : A(i) {}
};
class D : public B, public C {
public:
D(int i) : B(i), C(i) {}
};
Спасибо, Francesco