草庐IT

myArrayOfStructs

全部标签

c++ - 全局数组定义了两次但仍在编译?

在a.h中,我错误地创建了一个没有extern关键字的数组,这应该会导致一个暂定定义a.h:MyStructmyArrayOfStructs[];然后在a.cpp中定义这个数组a.cpp:MyStructmyArrayOfStructs[CONSTANT];这令人惊讶地编译。为什么编译器没有提示重新定义? 最佳答案 这是完全正确的。第一个(.h)表示某处存在一个数组,但没有实例化它。第二个分配它。 关于c++-全局数组定义了两次但仍在编译?,我们在StackOverflow上找到一个类似