sln,vcxproj,vcxproj.filters,lib,dll,exe含义
建立工程
建立C++工程后会生成多个文件
例如 sln,sdf,vcxproj,vcxproj.filters,vcxproj.user这些都是文件的扩展名。
- sln是解决方案文件,为解决方案资源管理器提供显示管理文件的图形接口所需的信息;
- sdf (SQL Server Compact Edition Database File)文件,是工程的信息保存成了数据库文件,如果你没有参加大型的团队项目,不涉及到高深的调试过程,这个文件对于你来说没什么用了,可以放心的删除,如果你后来又需要这个文件了,简单,打开工程里的.sln文件重新编译链接就ok了;
- vcxproj文件:工程文件,其中描述了工程的各项属性,修改该文件后再重新build时vs会重新build工程;
- vcxproj.filter文件:可理解为视图文件,定义了工程在VS中打开后的目录结构,修改该文件后重新build时vs不会重新build工程;
- vcxproj.user文件:是本地化用户配置,允许多个用户使用自己喜好的方式配置这个项目(例如打开项目时候窗体位置等与项目内容无关的配置)。
编译生成
C++工程编译后会生成多个文件,
例如 ilk,pch,pbd,obj,idb,pdb,lib,dll,exe这些都是文件的扩展名。
- ILK文件:是连接过程中生成的一种中间文件,只供LINK工具使用;
- PCH文件:预编译头文件,由编译器在建立工程时自动生成,其中存放有工程中已经编译的部分代码,在以后建立工程时不再重新编译这些代码;
- PBD文件:类似于DLL的文件。只是DLL是机器码,PBD 是伪代码;
- obj文件:是3D模型文件格式。由Alias|Wavefront公司为3D建模和动画软件"Advanced Visualizer"开发的一种标准,适合用于3D软件模型之间的互导,也可以通过Maya读写;
- idb文件:一种 MSDev 中间层文件;
- PDB文件:(程序数据库)文件保持着调试和项目状态信息,从而可以对程序的调试配置进行增量链接;
- lib文件:静态链接库文件(重要);
- dll文件:动态链接库文件(重要);
- exe文件:可执行文件(重要)。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。