1. 创建项目

打开Visual Studio软件,创建一个空项目。
Image 2.png

2. 添加头文件和源文件

右键项目,选择添加新建项。
Image 3.png
然后在弹出的窗口中选择C++文件(.cpp)和头文件(.h)分别添加,在选择C++文件时,要在下方名称处将后缀由”.cpp”改为”.c”。
Image 5.png

3. 配置属性

右键项目,选择属性,进行属性配置。
Image 6.png
在属性配置窗口中,进行一些列配置:
1)配置选择为“所有配置”:

  • 平台:根据需要进行选择,此处为“活动(Win32)”;
  • 输出目录:根据需要进行设置;
  • 中间目录:根据需要进行设置;
  • 生成日志文件:根据需要进行设置;
  • 配置类型:“动态库(.dll)”。

2)配置选择为“Debug”:

  • 平台:根据需要进行选择,此处为“活动(Win32)”;
  • 目标文件名:“$(ProjectName)d”(此处对于Debug版本的库其文件名后比Release版本多一个”d”)。

Image 7.png
Image 8.png

4. 编写源码

在创建的头文件和源文件中添加源码。

  1. /*******************function.h*********************/
  2. // 预处理器块
  3. #ifndef FUNCTION_H
  4. #define FUNCTION_H
  5. // 导入导出宏定义块
  6. #ifdef FUNCTION_EXPORTS
  7. #define FUNCTION_API __declspec(dllexport)
  8. #else
  9. #define FUNCTION_API __declspec(dllimport)
  10. #endif
  11. // 表明使用以下函数采用C风格函数
  12. #ifdef __cplusplus
  13. extern "C" {
  14. #endif
  15. /**
  16. * Ref: 加法
  17. * Para: int var1 变量1
  18. * Para: int var2 变量2
  19. * Ret: int 和
  20. * Note: 声明一个函数
  21. **/
  22. FUNCTION_API int __cdecl add(int var1, int var2); // __cdecl表示C语言默认的函数调用方法
  23. #ifdef __cplusplus
  24. }
  25. #endif
  26. #endif // FUNCTION_H
  1. /*******************function.c*********************/
  2. #include "function.h"
  3. FUNCTION_API int __cdecl add(int var1, int var2)
  4. {
  5. return var1 + var2;
  6. }

根据导入导出宏定义名称(此处代码中为FUNCTION_EXPORTS),打开属性配置窗口,选择“C/C++”—“预处理器”—“预处理器定义”中,添加导入导出宏定义名称(此处代码中为FUNCTION_EXPORTS)。

5. 编译

分别选择Debug和Release版本进行编译,在对应的生成目录下生成相应的文件。
Image 10.png