假设我有几个继承的类.
#include <iostream>
struct A {
A() {std::cout << "a";}
};
struct B : A {};
struct C : A {};
struct D : B, C {};
int main {
D d;
}
Run Code Online (Sandbox Code Playgroud)
在执行程序时,正如预期的那样,我看到构造了两个A对象,一个用于B,另一个用于创建D对象时构造的C对象.谁,我怎么能不创建两个A对象?我希望使用相同的A对象来创建B和C对象.这可能吗?