我有一个密码,

// 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实例时?

谢谢!

最佳答案

它的实现已定义。

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

10-07 12:20