6.3w+
社区成员
vc下成员初始化的顺序是和声明的顺序一致的
你可以这样验证
#include "iostream"
using namespace std;
struct A {
A(int a) {
cout<<"init A"<<endl;
}
};
struct B {
B(int b) {
cout<<"init B"<<endl;
}
};
struct C {
C(int c) {
cout<<"init C"<<endl;
}
};
struct t {
A a;
B b;
C c;
t(int _b, int _c, int _a) : b(_b), c(_c), a(_a) {
}
};
int main() {
t _t(1, 2, 3);
return 0;
}
结果是
init A
init B
init C
请按任意键继续. . .