您的位置:首页 > 其它

Dll的注意问题

2016-01-06 12:19 260 查看

理解 __declspec(dllexport)和__declspec(dllimport)

1、解决的问题:

  考虑下面的需求,使用一个方法,一个是提供者,一个是使用者,二者之间的接口是头文件。头文件中声明了方法,在提供者那里方法应该被声明为__declspec(dllexport),在使用者那里,方法应该被声明为__declspec(dllimport)。二者使用同一个头文件,作为接口,怎么办呢?

2、解决办法:

  使用条件编译:定义一个变量,针对提供者和使用者,设置不同的值。

1 #ifndef DLL_H_
2 #define DLL_H_
3
4 #ifdef DLLProvider
5 #define DLL_EXPORT_IMPORT __declspec(dllexport)
6 #else
7 #define DLL_EXPORT_IMPORT __declspec(dllimport)
8 #endif
9
10 DLL_EXPORT_IMPORT int add(int ,int);
11
12 #endif
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  需求