关于 C++ 语言,以下说法不正确的是( )。
这题考const成员函数、静态成员初始化规则和全局对象生命周期。拿到题先想‘静态’和‘常’的本质区别,再看选项里哪个把两者混为一谈。
学生容易把‘静态全局对象’和‘常量全局对象’当成一回事,觉得都是全局的,初始化时序肯定一样。其实C++标准里,只有静态成员变量(包括静态全局)才保证在main前初始化;普通常量全局对象(非static)不保证,只保证在main前构造完成即可,具体何时构造看实现,可能早也可能晚。所以D选项说‘都是’就错了。
【考点】const 成员函数规则|静态成员初始化|全局对象生命周期
本题属于 GESP 六级 C++ 模块,聚焦于「const 成员函数」与「静态成员变量初始化」这两个高频考点。命题人专卡对「静态」与「常」概念的混淆,利用考生对「全局对象」的泛化理解,忽略「静态」与「常」的本质差异,从而设置陷阱。