首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

link error 大家来帮忙看看! error LNK2001解决思路

2012-03-04 
link error 大家来帮忙看看! error LNK2001PerfDocUT_PerfDocTest.obj:errorLNK2001:unresolvedexternalsy

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

热点排行