错误LNK2019:未解析的外部符号“public:__ thishisall

时间:2013-06-01 20:58:04

标签: c++ linker-errors

正如我之前发送过一些关于LNK 2019的问题,我遇到了一段代码,我不明白发生了什么:

RTIFederate.cpp

#include "RTIFedAmb.h"
#include "RTIFederate.h"

....

this->fedamb = new RTIFedAmb(); <- ERROR ! LNK 2019

RTIFedAmb.h

class RTIFedAmb : public NullFederateAmbassador
{
public:
    // methods //
    RTIFedAmb();
    virtual ~RTIFedAmb() throw();
}

文件RTIFederate.h

class RTIFederate
{
public:
    RTIambassador *rtiamb;
    RTIFedAmb     *fedamb;
}

RTIFedAmb.cpp

#include "RTIFedAmb.h"
using namespace rti1516e;
using namespace std;


//----------------------------------------------------------------------
//                                       CONSTRUCTORS
//----------------------------------------------------------------------
RTIFedAmb::RTIFedAmb()
{

}

RTIFedAmb::~RTIFedAmb() throw()
{
}

任何人都可以帮我解决这个错误吗?我错过了什么?

1 个答案:

答案 0 :(得分:0)

我在你原来的问题中看到RTI3.cpp是#including“RTIFederate.cpp”。不建议这样做。分离源文件进行编译后,如果仍有链接错误,我建议使用VS工具dumpbin.exeundname.exe。 Dumpbin可以显示您定义和引用RTIFedAmb构造函数的位置(obj文件),以及揭示任何装饰问题(调用约定,链接等)。然后,Undname可以帮助您理解和解决这些差异。