VS2019环境下动态链接库DLL的创建与调用(动态调用隐式链接)
欢迎阅读
你好! 这是我第一次写博文,有不足之处烦请指出。
声明
本文内容由作者查阅多方资料,亲自实验后总结得出!严禁任何形式的抄袭!请尊重作者!
一、实验环境
VS2019、Win10
二、创建动态链接库(DLL)
首先,我们需要知道动态链接库(以下简称DLL)的作用,我在这里总结为,可以重复使用功能相同的代码,而不必对已经实现了的功能重新编写代码。链接库有动态和静态两种,本文旨在记录如何实现DLL的创建与调用,故不对这两种链接库做探讨。接下来让我们开始实验吧
步骤<1>:创建新项目
创建新项目–>动态链接库(DLL)
步骤<2>:配置新项目
输入“项目名称”,然后选择工程“位置”,“解决方案名称”与“项目名称”相同,是自动生成的,如果没有特殊需求建议不要修改,不要勾选“将解决方案和项目放在同一目录中”,最后点击“创建”按钮。
步骤<3>:初始化界面
这是创建工程之后的初始化界面,其中的代码是自动生成的,我们不需要去修改!
步骤<4>:新建文件
接下来创建我们自己的DLL:
(1)首先新创建头文件“TestDLL.h”,它的作用是用来声明需要导出的函数接口。
(2)然后新创建源文件“TestDLL.cpp”,它的作用是用来实现被声明的函数。
此时工程目录结构如下图:
至此,所有的准备工作已完毕,接下来我们开始编写代码吧!
步骤<5>:代码编写
(1)首先我们要在‘TestDLL.h’中编写如下代码:
#pragma once
#include <iostream>
extern "C" __declspec(dllexport) void SayHello();
上面代码的功能是声明一个可被调用的函数“SayHello()”,它的返回类型是void。
现在分析一下extern "C" __declspec(dllexport) void SayHello();
这一句代码,其中extern "C"
的作用是告诉编译器将被它修饰的代码按C语言的方式进行编译,这么做