我有一个代码,
// 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实例时?
谢谢!
答案 0 :(得分:2)
这是实施定义。
唯一可以肯定的是,它会在您的应用程序首次进入定义它的翻译单元时初始化。