-4

我有一个类 Rules(),它有一个名为 m_String 的静态公共成员。
我使用适当的 CString 在类中定义该成员。
当我想从全局函数中使用该成员时,我
在编译时使用“Rules::m_String”,我收到以下错误:

Rules.obj:错误 LNK2001:未解析的外部符号“公共:静态类 ATL::CStringT > > 规则::m_String”(?m_String@Rules@@2V?$CStringT@DV?$StrTraitMFC_DLL@DV?$ChTraitsCRT@D@ ATL@@@@@ATL@@A)

也许这意味着设置 m_String 的规则中的函数也应该是静态的?

4

1 回答 1

4

很可能您在编译单元中没有Rules::m_String定义(未声明)和初始化的实例。Rules.cpp

您的Rules.cpp外部任何函数定义中是否有类似以下的行?

CString Rules::m_String = CString("Whatever initial value required");

如果没有显示更多代码,其他任何事情都很难说。

于 2012-11-08T17:27:28.477 回答