2024-09-01
C/C++
00

目录

一、debug,release区别
二、VC++目录
可执行文件目录:
包含目录:
外部包含目录:
引用目录:
库目录
Windows运行库目录
源目录
排除目录
C/C++ 常规
链接器

一、debug,release区别

https://blog.csdn.net/gaoyi221119/article/details/88890486

Debug:调试版本,包含调试信息,所以容量比Release大很多,并且不进行任何优化(优化会使调试复杂化,因为源代码和生成的指令间关系会更复杂),便于程序员调试。Debug模式下生成两个文件,除了.exe或.dll文件外,还有一个.pdb文件,该文件记录了代码中断点等调试信息

Release:发布版本,不对源代码进行调试,编译时对应用程序的速度进行优化,使得程序在代码大小和运行速度上都是最优的。(调试信息可在单独的PDB文件中生成)。Release模式下生成一个文件.exe或.dll文件

二、VC++目录

VC++目录 中,包含目录库目录是我们最常用的。

也就是下图的样子:

在这里插入图片描述

看看各个部分什么意思:

可执行文件目录:

VC++目录的可执行文件目录指的是项目在使用,编译或者调试过程中需要使用的可执行文件路径,并不是DLL的路径。与PATH对应指的则是创建C++工程时,会从PATH环境变量中的值继承到项目的默认设置中。

包含目录:

头文件的根搜索目录地址。比如这里写D:\opencv\build\include,程序里写#include <opencv2\opencv.hpp> ,编译器在D:\opencv\build\include中搜索到opencv2\opencv.hpp文件。

外部包含目录:

不懂。

引用目录:

不懂。

库目录

关于静态链接库和动态链接库需要看:https://www.cnblogs.com/52php/p/5681711.html

lib文件目录。什么是lib文件?

使用lib需注意两个文件:

.h头文件,包含lib中说明输出的类或符号原型或数据结构。应用程序调用lib时,需要将该文件包含入应用程序的源文件中。

.LIB文件。


使用dll需注意三个文件:

.h头文件,包含dll中说明输出的类或符号原型或数据结构的.h文件。应用程序调用dll时,需要将该文件包含入应用程序的源文件中。

.LIB文件,是dll在编译、链接成功之后生成的文件,作用是当其他应用程序调用dll时,需要将该文件引入应用程序,否则产生错误(如果不想用lib文件或者没有lib文件,可以用WIN32API函数LoadLibrary、GetProcAddress装载)。

dll文件,真正的可执行文件,开发成功后的应用程序在发布时,只需要有.exe文件和.dll文件,并不需要.lib文件和.h头文件。

在这里插入图片描述

这里介绍得更好:链接

Windows运行库目录

不懂。

源目录

估计是c++源代码目录。

排除目录

不懂。

C/C++ 常规

这里有个附加包含目录,应该和之前介绍的包含目录功能一样。

在这里插入图片描述

链接器

常规->附加库目录:寻找.lib文件的搜索目录 输入->附加依赖项:lib库(C++的库会把函数、类的声明放在*.h中,实现放在*.cpp或*.cc中。编译之后,*.cpp,*.cc,*.c会被打包成一个.lib文件,这样可以保护源代码)

这里很详细:https://blog.csdn.net/u012043391/article/details/54972127

如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:Dong

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC。本作品采用《知识共享署名-非商业性使用 4.0 国际许可协议》进行许可。您可以在非商业用途下自由转载和修改,但必须注明出处并提供原作者链接。 许可协议。转载请注明出处!