CPP库链接

添加库

在solution路径下创建Dependencies文件夹,将第三方库的include文件夹和lib文件夹复制到该路径下(以GLFW为例)。

一般的CPP库都有这样的结构,include中存放头文件,添加这些头文件可以获取到声明(函数声明和变量声明)。至于lib,链接器从中获取到定义。lib文件夹一般包含三类文件:

1 glfw3.dll文件,运行时动态链接库,动态链接时使用

2 glfw3dll.lib文件,实际上是一种静态库,与glfw3.dll一起使用,包含了dll文件中所有函数、符号的位置,在编译时链接。如果没有该文件,则直接访问.dll查找定义。

3 glfw3.lib静态链接库,比其他文件大得多

添加头文件

添加库文件

静态库

 

 

 

 动态库

头文件同时支持静态链接和动态链接,也就是说,无论通过那种方式链接,对头文件的配置是一样的。

glfw3dll.lib文件包含了指向glfw3.dll的一堆指针,需要包含这个文件,避免函数与变量指向错误。

然后将glfw3.dll文件和可执行文件放在一处,使之可以被自动搜索加载。

 

得到了静态加载时一样的结果,此时双击可执行文件运行也是如此。 

静态

静态链接意味着这个库会被放到你的可执行文件中,它在你的可执行文件中

故此编译器和链接器可以看到更多内容,实现优化

动态

动态链接库是在运行时被链接的,在程序运行时,装载动态链接库

故需要可执行文件和dll文件在一起

本文是学习@Cherno大佬的CPP视频过程中跟着一起敲敲代码,权作记录

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值