link error 大家来帮忙看看! error LNK2001
PerfDocUT_PerfDocTest.obj : error LNK2001: unresolved external symbol "public: static class CppUnit::Listener * CppUnit::Listener::docInstance " (?docInstance@List
ener@CppUnit@@2PAV12@A)
\PerfUT\bin/PerfDocUT.exe : fatal error LNK1120: 1 unresolved externals
怎么解决? 大家有遇到这种错误的吗?
找到源代码,发现是这一行有错:
class Listener : public CPPUNIT_NS::TestListener, public TestResultCollectorEx
{
......
public:
CPPUNIT_API static Listener * docInstance; //这一行有错!
......
};
[解决办法]
static 声明的变量要在使用它的cpp里初始化/声明一下, 初始化的时候不要带 static
在用到它的cpp开头这样:
CppUnit::Listener *CppUnit::Listener::docInstance;
[解决办法]
如果没有声明,就会提示你那个错,
如果cpp开头带了static,也会提示出错, 忘记是啥错了,好像不是link error