Meta.h
class TMeta
{
// decs here
TMeta()
{
// initialisations
}
};
extern TMeta Meta;
---------------------------
Meta.cpp
TMeta Meta;
// TMeta fct bodies here
---------------------------
通过上面的设置,我希望能够从包含Meta.h的任何其他.cpp文件中访问Meta。在我的主要表单(包括Meta.h)中,我单击一个调用Meta.SomeMetaFct()的按钮。当调试器进入这个函数时,我发现应该在Meta构造函数中初始化的变量尚未被触及。
我认为所有全局变量都是在主程序执行之前初始化的。这不是全局类变量的情况,还是我错过了什么?我确实查了一些类似的问题,但我没有更聪明。
编辑:我对Meta似乎存在但尚未构建感到疑惑?
答案:我今天收到的一个编译器警告表明它使用的是一个不再有效的meta.obj文件,因此在进行清理和构建之后最终得到了它。谢谢你的回复。