DLL函数调用期间未引用的外部符号

时间:2011-02-20 17:13:50

标签: c++ dll import export

我在DLL中实现类的问题与解释here的方式相同 。我有我所有声明为虚拟的方法的接口,我有我的类实现接口,我有应该创建类的对象的方法。问题出在这里,当我尝试使用它时,我得到一个“未引用的外部符号”错误。为什么呢?

class IXYZ
{
    virtual void XXX() = 0;
};

class XYZ : public IXYZ
{
    void XXX();
}

#ifdef __cplusplus
    extern "C" __declspec(dllexport) IXYZ* __stdcall GetIXYZ();
#endif

我在win32程序中使用它:

IXYZ *myvar = GetIXYZ();

在我的exe程序中,我已经包含了dll的.h文件

1 个答案:

答案 0 :(得分:1)

如果您已正确定义DLL中的函数并正确导出,那么唯一合理的解释是您在使用DLL的应用程序中使用.lib文件时出现问题。