原文如下:
“在创建DLL的时候,我们应该首先创建一个头文件来包含想要导出的变量(类型和名称)和函数(原型和名称),这个头文件还必须定义导出的函数或变量所用到的任何符号和数据结构,DLL的所有源文件都应该包含这个头文件”
主要是最后一句话:“DLL的所有源文件都应该包含这个头文件”不太理解
我在使用dll文件时(静态链接使用#pragma comment)会使用到h文件、lib文件、dll文件
按照上面最后一句话的意思,在生成dll文件时,源文件中应该是这个样子
但是我之前导出dll文件时,都是下面这样
现在不理解的是 DLL的源文件包含这个头文件有什么意义吗?(因为之前一直没有在生成dll时,#include头文件)
头文件dll.h的内容如下
#pragma once
#ifdef DLL_EXPORTS
#define DLL _declspec(dllexport)
#else
#define DLL _declspec(dllimport)
#endif
#ifdef _cplusplus
extern "C"
{
#endif
DLL int sum(int a, int b);
#ifdef _cplusplus
}
#endif