0

我有一个代码,

// CFoo.h
class CFoo
{
public:
   CFoo();
   ~CFoo();
   static const std::string mStr;
};

// CFoo.cpp
const std::string mStr = "MyFoo";

CFoo::CFoo()
{
}

CFoo::~CFoo()
{
}

我的静态 mStr 什么时候会被初始化?我的应用程序何时执行?或者在创建 CFoo 的实例时?

谢谢!

4

1 回答 1

2

它是实现定义的。

唯一可以保证的是,它将在您的应用程序首次进入定义它的翻译单元时被初始化。

于 2013-10-27T05:15:17.957 回答