在开发与测试中,有时需要加载不同的库,如果每次修改源程序就会非常麻烦,但如果指定库函数进行动态加载,则可以不用修改代码就能实现不同库函数的功能。以下是我在Visual Studio 2017环境下实现的动态库加载实验。
本文参考例程:https://blog.csdn.net/qq_28249373/article/details/76098914
- 首先我们需要建立DLL工程,生成自己的动态链接库:
- 编写库函数,在文件中可以通过函数名称调用库函数
我一开始使用的c++风格的库函数,没有使用extern “C”,但是这样在c++程序中调用时会报错,因为此时DLL中函数名称为乱码,直接调用是找不到对应函数的。后面我加上了extern “C”问题便解决了。
- 生成DLL后,下一步是在程序中加载它,并使用其中的函数。这里有两种方式,可以使用静态加载,即在程序中写明需要的库,另一种是动态加载,即运行时指定需要加载的库。静态加载实现比