标签:VS2017 dllexport 类的成员 image bst space img 解决 end
// Dll-1.h #ifdef Dll_1_API #else #define Dll_1_API _declspec(dllimport) #endif // Dll_1_API Dll_1_API int add(int a, int b); Dll_1_API int subtract(int a, int b);
其中,_declspec(dllimport)是为了声明add函数和substract函数从dll动态库导出,还可以用_declspec(dllimport)来声明类或者类的成员函数从dll动态库导出。
// Dll-1.cpp : 定义 DLL 应用程序的导出函数。 // #include "stdafx.h" #define Dll_1_API _declspec(dllexport) #include "Dll-1.h" int add(int a, int b) { return a + b; } int subtract(int a, int b) { return a - b; }
// Dll-1.h #ifdef Dll_1_API #else #define Dll_1_API _declspec(dllimport) #endif // Dll_1_API Dll_1_API int add(int a, int b); Dll_1_API int subtract(int a, int b);
#include <stdlib.h> #include <iostream> #include "Dll-1.h" using namespace std; int main() { int x = 3; int y = 6; int m = add(x, y); int n = subtract(x, y); cout << "m: " << m << endl; cout << "n: " << n << endl; system("pause"); return 0; }
在测试项目工程中配置lib文件的引入路径,同时将lib文件,dll文件复制到测试项目中。点击链接生成解决方案。
结果如下
标签:VS2017 dllexport 类的成员 image bst space img 解决 end
原文地址:https://www.cnblogs.com/madFish/p/11918248.html