【发布时间】:2021-08-31 09:03:52
【问题描述】:
我正在尝试创建一个需要首先初始化成员变量的类。我知道为什么会这样,但是有没有办法解决这个问题?
当前打印顺序: 第二 首先
想要的打印顺序: 第一的 第二个
#include <iostream>
struct A {
A() {
std::cout << "first" << '\n';
}
};
struct B {
B() {
std::cout << "second" << '\n';
}
};
struct C : public B {
C() : a(), B() {
}
A a;
};
int main() {
C c;
return 0;
}
【问题讨论】:
-
简短回答是否定的。也许如果您解释为什么需要它,我们可以告诉您该怎么做。