我的回忆是,只能在翻译单元中保证有序初始化。无法保证任何特定的翻译单元在任何其他翻译单元之前已经初始化,因此以下内容是危险且未定义的:
myClass global_var();
int main() {
return 0;
}
我对初始化列表感到好奇。如果我要做以下事情怎么办?
std::array<MyClass,2> global_array = {
MyClass(),
MyClass()
};
int main() {
return 0;
}
初始化列表是否保证在所有翻译单元初始化后运行?