库:
二进制可执行文件,操作系统载入内存执行,将不怎么更改的底层打包成库后可以使整体编译更改,并且实现对底层的保密(不对外或员工开放)。库有两种:静态库(.a、.lib)和动态库(.so、.dll)。静态库将汇编生成的目标文件.o与引用到的库一起链接打包到可执行文件中,不重新编译就无法修改它。动态库位于可执行文件之外,动态库被添加到内存中,因此函数的目标文件始终可用。 在编译过程之后,在运行时,程序可以只调用它需要的函数。一般使用的是动态库,占用资源更小,特别是嵌入式开发时对资源要求高。静态库和动态库在cmake中配置差异查考我的:cmake笔记_花开莫与流年错_的博客-CSDN博客
搜索、添加库
搜索同样的库可能有多个存在,我一般安装下载数量多的。操作如下:点击引用》鼠标右键》管理NuGet》搜索想要添加的库》点击安装
创建动态库官网教程
在 Visual Studio 中创建 C/C++ DLL
隐式、显式连接
创建静态库参考微软官网
1、安装指导创建静态库,添加静态库
2、在静态库中添加自己的代码,并且加上需要包含的头文件
#include "pch.h"
3、编译生成库
4、点击“解决方案”》鼠标右键》添加》新建项目
5、鼠标右键引用》勾选上之前生成的库文件
7、点击要当前运行项目,鼠标右键》属性
8、常规》附加包含目录》选择自己库文件所在文件夹
9、就可以正常使用自己创建的静态库了,不过整体启动库可能需要更改为后添加的(解决方案)》属性》启动项目
动态库除了上面的操作外还需要如下操作
10、添加依赖库
11、添加依赖项文件链接(使用 $(IntDir) 宏,这样无论创建的是哪种版本,链接器都可找到 DLL)