我想跟踪MyClass
的实例,所以我在MyClass中添加了一个私有静态变量std::map<int,MyClass*>
。现在的问题是它导致未解析的外部符号,我不知道如何调试。我该如何解决这个问题?
注意:我是一名经验丰富的Java程序员和新手C ++程序员,我也将其用作JNI
dll
,这就是为什么我需要跟踪{的实例{1}}。
答案 0 :(得分:5)
您可能没有提供实施:
MyClass.h:
class MyClass {
private:
static std::map<int, MyClass *> m_instances;
...
};
MyClass.cpp:
#include "MyClass.h"
// Add this
std::map<int, MyClass *> MyClass::m_instances;