dll的封装和使用 In 巴西队世界杯名单 @2025-07-09 20:20:16

背景

在windows平台下,要实现函数的封装,一般采用的是dll动态库的形式

实现了函数的封装就意味着实现过程的隐藏

可以实现跨平台和跨语言的使用

实施步骤

生成dll动态库

在VS中生成新项目,应用类型选择DLL

新建文件(由于生成的都为CPP文件,此时也新建CPP文件)

编写代码,实现函数,编译生成dll动态库

extern "C" //extern "C"指定使用C语言的方式编译,不加入这句话的话,无法在C语言中调用

{

__declspec(dllexport)

//函数实现

__declspec(dllexport)

//函数实现

}

使用dll动态库

第一种方法:

将生成的dll动态库复制到项目所在可执行程序目录下

将生成的.lib文件复制到项目源文件目录下

在使用前载入文件(在头文件中声明)

#ifndef __DLLNAME_H

#define __DLLNAME_H

#pragma comment(lib, "dllname.dll")

//加入函数声明

#endif

载入头文件

第二种方法:

将生成的dll动态库和lib文件复制到.c文件同级目录

在属性,连接器,输入中添加依赖项,输入lib名

载入头文件

dll调用原理

dll没有主函数,无法直接运行

exe在运行的时候,可以调用dll,将其加载到所属内存中执行

exe只是调用dll的功能

动态库与静态库的区别

动态库在编译时独立,运行时加载。可以只改变动态库,而不改变可执行程序。同时,动态库中的代码与位置无关

静态库在编译时候编入可执行文件。

FOX体育 (美国)
android 苹果 换机,苹果12怎么一键换机安卓?iPhone12一键换机功能操作步骤