static对象的构造时间

就想叫yoko 2011-05-27 05:16:50
怎么more effective c++上说先于main函数
...全文
85 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
hackbuteer1 2011-06-06
  • 打赏
  • 举报
回复
全局变量,静态变量的构造在main函数之前??
今天学习了一下
Lactoferrin 2011-05-27
  • 打赏
  • 举报
回复
如果自定义了入口点,全局对象不会调用构造函数
pengzhixi 2011-05-27
  • 打赏
  • 举报
回复
所谓的全局变量的初始化顺序不确定是指,多个源文件的全局变量,同一个源文件的全局变量的初始化顺序是确定的。
pengzhixi 2011-05-27
  • 打赏
  • 举报
回复
[Quote=引用楼主 q191201771 的回复:]
怎么more effective c++上说先于main函数
[/Quote]

在main启动前,全局变量,静态变量都会构造好的。
qq120848369 2011-05-27
  • 打赏
  • 举报
回复
因为是全局的,我记得书上还说过static变量的安全性问题,什么初始化顺序不确定,一直没当回事,也不知道它讲的是什么意思.
就想叫yoko 2011-05-27
  • 打赏
  • 举报
回复
哦, 我是在vc下试的
chengzhe 2011-05-27
  • 打赏
  • 举报
回复
不同的编译器有自己的编译策略!
老邓 2011-05-27
  • 打赏
  • 举报
回复
比如如果一个static实例虽然定义了,但没有被使用,则VC编译器不会真正的构造它。
而GCC却会。
老邓 2011-05-27
  • 打赏
  • 举报
回复
本就如此。
可以用log来测试下。
另,不同编译器实现不一样。

64,654

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧