错误 LNK2020:未解析的令牌 (06000001) XXNET.XXNETDATA::.ctor with Interface
error LNK2020: unresolved token (06000001) XXNET.XXNETDATA::.ctor with Interface
我在 C++ 库 1 中有一个 XXNETDATA class,它在 C++ 库 2 中派生 class PURNETDATA。
XXNET.H
namespace WM
{
namespace XXNET
{
public ref class XXNETDATA abstract
{
public:
// Start Constructor/Destructor
XXNETDATA();
~XXNETDATA();
virtual int assignNewKey(RWCString &Key) abstract;
virtual public String^ getKey(XX* &pXx) ;
}
}
PURNET.H
#using "WM.XXNETDATA.WMD.dll"
using namespace WM::XXNET;
namespace WM
{
namespace NETDATA
{
public ref class PURNETDATA : public XXNETDATA
{
public:
// Start Constructor/Destructor
PURNETDATA (const char* filterString,const char* SortString);
~PURNETDATA();
virtual int assignNewKey(RWCString &Key) override;
virtual String^ getKey(XX* &pXx) override;
}
}
这里我没有得到编译错误,但是链接器错误如下
error LNK2020: unresolved token (06000001) WM.XXNET.XXNETDATA::.ctor
error LNK2020: unresolved token (06000010) WM.XXNET.XXNETDATA::getKey
注意:两个库都是使用 /clr 选项编译的。
Class WPRNET.CPP 包括 WXXNET.h 不需要的文件。因为两者都是托管 CPP 文件和程序集 (.dll) 包含元数据信息,不需要包含 .h 文件(本机定义)。
我在 C++ 库 1 中有一个 XXNETDATA class,它在 C++ 库 2 中派生 class PURNETDATA。
XXNET.H
namespace WM
{
namespace XXNET
{
public ref class XXNETDATA abstract
{
public:
// Start Constructor/Destructor
XXNETDATA();
~XXNETDATA();
virtual int assignNewKey(RWCString &Key) abstract;
virtual public String^ getKey(XX* &pXx) ;
}
}
PURNET.H
#using "WM.XXNETDATA.WMD.dll"
using namespace WM::XXNET;
namespace WM
{
namespace NETDATA
{
public ref class PURNETDATA : public XXNETDATA
{
public:
// Start Constructor/Destructor
PURNETDATA (const char* filterString,const char* SortString);
~PURNETDATA();
virtual int assignNewKey(RWCString &Key) override;
virtual String^ getKey(XX* &pXx) override;
}
}
这里我没有得到编译错误,但是链接器错误如下
error LNK2020: unresolved token (06000001) WM.XXNET.XXNETDATA::.ctor
error LNK2020: unresolved token (06000010) WM.XXNET.XXNETDATA::getKey
注意:两个库都是使用 /clr 选项编译的。
Class WPRNET.CPP 包括 WXXNET.h 不需要的文件。因为两者都是托管 CPP 文件和程序集 (.dll) 包含元数据信息,不需要包含 .h 文件(本机定义)。