将函数导出到没有类的DLL

时间:2012-02-27 00:11:05

标签: c++ function dllexport

有没有办法在教程中只将一个函数导出到DLL cos,它们总是使用类似的东西导出类:

 static __declspec(dllexport) double Add(double a, double b);

在一个类中,上面的语句不会引起任何问题,但是没有它给出的类:

 dllexport/dllimport requires external linkage

1 个答案:

答案 0 :(得分:17)

问题是“静态”限定符。你需要删除它,因为在这种情况下它意味着错误的东西。试试吧:

__declspec(dllexport) double Add(double a, double b);

这是编译DLL时头文件中需要的内容。现在要从使用DLL的程序访问该函数,您需要有一个头文件:

double Add(double a, double b);

如果使用#ifdefs,则可以将相同的头文件用于这两个目的:

#ifndef MYDLL_EXPORT
  #define MYDLL_EXPORT
#endif

MYDLL_EXPORT double Add(double a, double b);