首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C++静态数据成员初始化

C++静态数据成员初始化
EN

Stack Overflow用户
提问于 2015-04-23 09:18:39
回答 2查看 147关注 0票数 1

1)类的静态数据成员总是在main()调用之前被初始化,这是真的吗?

2)如果类初始化代码的静态数据成员使用其他转换单元的全局静态变量,是否会发生“静态初始化顺序失败”?

我在哪里能读到更多关于它的资料?在2003年的C++标准中,我找不到答案。

非常感谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-23 09:27:46

1)类的静态数据成员总是在main()调用之前被初始化,这是真的吗?

是的,它们总是在程序开始执行之前被初始化。

2)如果类初始化代码的静态数据成员使用其他转换单元的全局静态变量,是否会发生“静态初始化顺序失败”?

是的,除此之外,它还会发生在main()执行之前初始化的每一件事情上。

票数 1
EN

Stack Overflow用户

发布于 2015-04-23 09:22:13

两种答案都是。

有关它的良好描述,请参见https://isocpp.org/wiki/faq/ctors#static-init-order

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29818985

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档