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 文件,发布描述符(必选) ; ...
随机推荐
- 快速调用 GLM-4-9B-Chat 语言模型
一.确认本机显卡配置 二.下载大模型 国内可以从魔搭社区下载, 下载地址:https://modelscope.cn/models/ZhipuAI/glm-4-9b-chat/files 三.运行官方 ...
- AT_joisc2019_j 题解
先考虑这个式子: \[\sum_{j=1}^{M} |C_{k_{j}} - C_{k_{j+1}}| \] 一定是在 \(C\) 有序时取到,具体证明很简单各位读者自己证明. 那么现在式子变成: \ ...
- Linux 更新网络时间
下载包 yum install -y ntpdate 同步网络时间 ntpdate 0.asia.pool.ntp.org 若上面的时间服务器不可用,也可以改用如下服务器进行同步: time.nist ...
- 【解决方案】智能UI自动化测试
你的UI自动化追得上业务的变更和UI更迭吗?当今瞬息万变的时代,成千上万的App围绕着现代人生活的点点滴滴.为了满足用户的好的体验和时刻的新鲜感,这些App需要时刻保持变化,也给 UI自动化落地实施带 ...
- IP协议学习笔记
目录 IP地址格式 IP分类 CIDR 和 子网掩码介绍 NAT+公网.私网地址 CIDR 与 VLSM VLSM 子网划分案例 练习 Reference IP的作用类似物理世界中的地址,用于定位机器 ...
- mysql order by 造成语句 执行计划中Using filesort,Using temporary相关语句的优化解决
mysql> explain select permission.* from t_rbac_permission permission inner JOIN t_rbac_acl ...
- Netcode for Entities如何添加自定义序列化,让GhostField支持任意类型?以int3为例(1.2.3版本)
一句话省流:很麻烦也很抽象,能用内置支持的类型就尽量用. 首先看文档.官方文档里一开头就列出了所有内置的支持的类型:Ghost Type Templates 其中Entity类型需要特别注意一下:在同 ...
- MViTv2:Facebook出品,进一步优化的多尺度ViT | CVPR 2022
论文将Multiscale Vision Transformers (MViTv2) 作为图像和视频分类以及对象检测的统一架构进行研究,结合分解的相对位置编码和残差池化连接提出了MViT的改进版本 来 ...
- 爆破字典:linux 敏感文件-01
linux 中敏感文件 1.0 /apache/apache/conf/httpd.conf /apache/apache2/conf/httpd.conf /apache/php/php.ini / ...
- Kmesh v0.4发布!迈向大规模 Sidecarless 服务网格
本文分享自华为云社区<Kmesh v0.4发布!迈向大规模 Sidecarless 服务网格>,作者: 云容器大未来. 近日 Kmesh 发布了 v0.4.0 版本,感谢社区的贡献者在两个 ...