2013-07-22 17 views
0

我想跟踪MyClass的实例,所以我在MyClass中添加了一个私有静态变量std::map<int,MyClass*>。现在的问题是它导致无法解析的外部符号,我不知道如何调试。我该如何解决这个问题?在MyClass中使用静态std :: map <int,MyClass *>导致解析外部符号

注意:我是一位经验丰富的Java程序员和新手C++程序员,我也将使用它作为JNIdll,这就是为什么我需要跟踪MyClass的实例。

+0

没有必要评论你的注意..不要不用担心,它会编译;) – Maroun

回答

4

您可能还没有提供的实现:

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; 
+0

6分钟内无法接受答案。 :P 这是正确的答案。感谢您提供它。 – Marl

相关问题