C++ 项目目录结构
目录结构
project_root/
├── bin/ # 可执行文件目录
│ ├── my_app # 可执行文件
│ └── ... # 其他可执行文件或脚本
│
├── build/ # 编译产物目录
│ └── ... # 编译生成的中间文件和可执行文件
│
├── include/ # 头文件目录
│ ├── MyClass.h # 类的头文件
│ └── ... # 其他头文件
│
├── lib/ # 外部库目录(可选)
│ └── ... # 外部库文件
│
├── resources/ # 资源文件目录
│ ├── images/ # 图片文件
│ │ └── logo.png
│ ├── config/ # 配置文件
│ │ └── app_config.json
│ └── data/ # 数据文件
│ └── data.csv
│
├── src/ # 源代码目录
│ ├── main.cpp # 主函数文件
│ ├── MyClass.cpp # 类的实现文件
│ └── ... # 其他源文件
│
├── tests/ # 测试代码目录(可选)
│ ├── test_main.cpp # 测试主函数文件
│ └── ... # 其他测试文件
│
├── CMakeLists.txt # CMake 构建脚本(如果使用 CMake)
├── Makefile # Makefile 构建脚本(如果使用 Make)
├── README.md # 项目说明文件
└── LICENSE # 许可证文件
bin 和 build 的区别
bin
- 用途:
bin目录通常用于存放构建完成后生成的可执行文件或脚本。它是最终用户运行程序时所需的文件所在的目录。 - 特点:
- 可以包含在版本控制中,尤其是在发布可执行文件或脚本时。
- 是一个相对稳定的目录,即使清空
build目录,bin目录中的文件也应保持不变。 - 在一些项目中,
bin目录也可以包含开发工具或辅助脚本。
build
- 用途:
build目录通常用于存放编译过程中生成的中间文件和最终的可执行文件。它是一个临时目录,包含编译产物,如对象文件(.o或.obj)、依赖文件、生成的 Makefile 或其他构建系统的文件。 - 特点:
- 是一个临时目录,可以随时清空或删除而不会影响源代码。
- 通常不包含在版本控制中(例如,通过
.gitignore忽略)。 - 有时不同的构建配置(如 Debug 和 Release)会有各自的子目录。
C++ 项目目录结构的更多相关文章
- Laravel项目目录结构说明
Laravel项目目录结构说明: |- vendor 目录包含你的 Composer 依赖模块及laravel框架. |- bootstrap 目录包含几个框架启动跟自动加载配置的文件. |- app ...
- MVVM 模式下iOS项目目录结构详细说明
➠更多技术干货请戳:听云博客 我们在做项目的时候,会经常用到各种设计模式,最常见的要数 MVC (模型,视图,控制器)了.但是,今天我们要说的是另一种设计模式——MVVM. 所以 MVVM 到底是什么 ...
- 1-5Tomcat 目录结构 和 web项目目录结构
对应我的安装路径: web项目目录结构
- Android开发学习之路--Android Studio项目目录结构简介
既然已经搭建好环境了,那就对Android Studio中项目目录结构做个简单的了解了,这里以最简单的Hello工程为例子,新建好工程后看如下三个工程视图: 1.Android工程 manifests ...
- 【Android Studio安装部署系列】三、Android Studio项目目录结构
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 简单介绍下Android studio新建项目的目录结构. 常用项目结构类型 在Android Studio中,提供了以下几种项目结 ...
- vue项目目录结构
VUE项目目录结构 如上图所示,我们的目录结构就是这样的了. 目录/文件 说明 build 这个是我们最终发布的时候会把代码发布在这里,在开发阶段,我们基本不用管. config 配置目录,默认配置没 ...
- iOS开发总结——项目目录结构
1.前言 清晰的项目目录结构有利于项目的开发,同时也是软件架构的一部分,所以,项目开发之初搭建项目的目录结构很重要.刚转iOS时,自己并不知道如何搭建App的项目目录,在参与开发两个应用后,结合Web ...
- React脚手架创建一个React应用以及项目目录结构详解
react脚手架 用来帮助程序员快速创建一个基于xxx库的模板项目,包含了所有需要的配置,指定好了所有的依赖,可以直接安装/编译/运行一个简单效果 react提供了一个专门用于创建react项目的脚手 ...
- Angular4.x 安装|创建项目|目录结构|创建组件
Angular4.x 安装|创建项目|目录结构|创建组件 安装最新版本的 nodejs node.js 官网:https://nodejs.org/zh-cn/ 去官网下载 node.js,下一步下一 ...
- web项目目录结构
eclipse web项目目录结构 按照 Java EE 规范的规定,一个典型的 Web 应用程序有四个部分: 1. 公开目录 ; 2. WEB-INF/web.xml 文件,发布描述符(必选) ; ...
随机推荐
- Java集合框架总结图
Collection 接口的接口(对象集合) ├---List 接口:元素都有索引,可以重复,有序(迭代器顺序). │------├ LinkedList 接口实现类, 双向链表, 查询慢,增删快,效 ...
- 自学Java第二周
本周学习 一.Java能干些什么? 1.共三个版本:Java SE.Java EE.Java ME Java SE:Java语言的(标准版),用于桌面应用开发,是其他两个版本的基础. Java ME: ...
- 各类配置文件(DNS, Firefox,Edge)
DNS配置 腾讯DNS: 119.29.29.29 2402:4e00:: 2402:4e00:1:: 阿里云: 223.5.5.5 223.6.6.6 2400:3200::1 2400:3200 ...
- UE4 蓝图查找Actor和Actor标签
在用UE4 开发数字孪生应用的过程中,有很多业务会涉及到actor的查找,和actor标签的使用. 比如下面的场景中,找出所有的物联网设备进行标注. 通过类查找actor 通过类查找actor,可以查 ...
- 在Python中使用SWCNN去除水印
在Python中使用SWCNN去除水印 说明 首次发表日期:2024-07-17 SWCNN Github官方仓库: https://github.com/hellloxiaotian/SWCNN S ...
- Win10下安装LabelImg以及使用--LabelImg
labelImg是图片标注软件,用于数据集的制作.标注等等.下面介绍labelImg的安装过程. 我用的是anaconda,所以以anaconda prompt作为终端: 在Anaconda Prom ...
- Python 基于pymongo操作Mongodb学习总结
实践环境 Python 3.6.4 pymongo 4.1.1 pymongo-3.12.3-cp36-cp36m-win_amd64.whl 下载地址:https://pypi.org/simple ...
- Vue 给mapState中定义的属性赋值报错的解决方案
Vue 给mapState中定义的属性赋值报错的解决方案 by:授客 QQ:1033553122 1. 实践环境 Vue 2.9.6 2. 问题描述 <script> import ...
- python获取引用对象的个数
python获取引用对象的个数 使用sys.getrefcount()来获取当前对象被引用了多少次,返回的结果比实际大1 import sys class A: pass a = A() #创建实例对 ...
- Vue打包部署到CentOS 7
项目打包 在项目目录下执行打包目录进行打包 yarn build // 或者 npm run build 打包完成后会生成一个dist文件夹,这样就打包完成了(我这样做了SEO的,所有目录结构有点不一 ...