快速在VSCode中创建多文件多目录C++项目

CMake实战--Windows平台VSCode配置C++多文件项目构建与调试指南 本文提供了一份详细的Windows平台VSCode配置CMake多文件C++项目的实战指南。通过安装CMake、VSCode及必要扩展,并配合MinGW等编译器,手把手教你从零搭建项目结构、编写CMakeLists.txt,并实现高效的代码构建、运行与图形化调试,助你掌握现代化C++开发工作流。 阅读详情

对于轻量级的VSCode编辑器,我想像使用那些IDE一样,通过简单的几步就能构建出自己的项目文件树,类似于下面的结构。所以特地写了一个脚本,用于自动创建一个基本的项目。

.
├── Headers
│   └── test.hpp
├── makefile
├── Output
│   └── bin
└── Sources
    ├── main.cpp
    └── test.cpp

下面直接提供脚本:

### new.sh

# 输入一个文件名 $projectname
read projectname

# 添加前缀
filename="VSC_CPP_"$projectname

# 源文件目录
Src="$filename/Sources"

# 头文件目录
Inc="$filename/Headers"

# 创建项目树
mkdir -p $Src $Inc $filename/Output/bin

# 创建makefile文件
touch $filename/makefile

# 创建 main.cpp文件
touch $Src/main.cpp

# 文件名小写转换
#declare -l lfilename=$projectname
lfilename="${projectname,,}"

# 源文件
cpp_file=$Src"/"${lfilename}".cpp"
# 头文件
hpp_file=$Inc"/"${lfilename}".hpp"

# 创建一对项目文件
touch $cpp_file $hpp_file

# 向main.cpp中写入内容
echo "#include <iostream> " >> $Src/main.cpp
echo "#include \"$lfilename.hpp\"" >> $Src/main.cpp
echo "" >> $Src/main.cpp
echo "using namespace std;" >> $Src/main.cpp
echo "" >> $Src/main.cpp
echo "int main()" >> $Src/main.cpp
echo "{" >> $Src/main.cpp
echo "    cout << \"Hello VSC\" << endl;" >> $Src/main.cpp
echo "    return 0;" >> $Src/main.cpp
echo "}" >> $Src/main.cpp

# 向*.hpp中写入内容
echo "#pragma once" >> $Inc/$lfilename.hpp
echo "#include <iostream>" >> $Inc/$lfilename.hpp
echo "using namespace std;" >> $Inc/$lfilename.hpp
echo "" >> $Inc/$lfilename.hpp
echo "class $projectname" >> $Inc/$lfilename.hpp
echo "{" >> $Inc/$lfilename.hpp
echo "public:" >> $Inc/$lfilename.hpp
echo "    $projectname();" >> $Inc/
使用WSL+VSCode快速C++入门 使用WSL+VSCode快速C++入门0. 准备工作0) 系统要求 Windows 10 1803以上1) 安装WSL(Windows Subsystem Linux)2) 安装VSCode3) 将VSCode默认的终端配置为WSL的bash终端4) 在终端中安装构建工具1. 第一个源文件1) 基本代码2) 第一行代码 Hello, C++3) 我要开始做加减乘除啦4) 还有那些类型的数据都一块说... 阅读详情

相关推荐

从Run Code到调试C/C++文件:VSCode中C++多文件项目的正确编译姿势

本文详细解析了在VSCode中编译C++多文件项目时,为何简单的“Run Code”会失效并产生链接错误。核心解决方案在于正确配置`tasks.json`文件,通过使用通配符(如`*.cpp`)或显式指定源文件路径,让编译器识别所有必要文件,从而实现工程化构建。文章还介绍了如何结合调试功能,建立完整的编码-构建-调试工作流,并提供了项目结构组织与常见问题排查的实用建议。

weixin_28839549的博客 393

VScode:从零开始配置C/C++多文件项目开发环境

本文详细介绍了如何在VScode中从零开始配置C/C++多文件项目开发环境,包括安装必要插件、配置MinGW-w64编译器、设置项目结构与配置文件等关键步骤。通过优化tasks.json和launch.json文件,实现高效的多文件编译与调试,提升开发效率。特别适合初学者快速搭建专业的C/C++开发环境。

weixin_30693683的博客 741

VSCode下C/C++分文件、分目录项目编译环境配置大全

在C/C++开发中,一个清晰的项目目录结构是维护复杂项目的基础。它有助于组织源代码文件、头文件、库文件以及构建脚本等资源。良好的项目结构不仅使得新团队成员能更快地上手项目,还便于进行版本控制和代码维护。随着项目的扩展,合理的目录结构可以确保代码的可读性和可维护性,减少编译时间,并且有助于团队分工合作。Code Runner是一个被广泛使用的VSCode扩展,它允许开发者直接从编辑器内部运行代码。

weixin_28721743的博客 1014

EMQX 结合MySQL实现精细化ACL权限管理实战

本文详细介绍了如何通过EMQX结合MySQL实现精细化的ACL权限管理,提升物联网设备接入和消息传输的安全性。内容包括环境准备、基础配置、权限规则设计技巧以及高级应用与性能优化方案,帮助开发者快速掌握动态生效、便于管理的权限控制方法。

weixin_28683689的博客 196

CH341的I2C流模式(StreamI2C)到底怎么用?从EEPROM读写到自定义设备,一篇讲清参数配置逻辑

本文详细解析了CH341的I2C流模式(StreamI2C)的使用方法,从EEPROM读写到自定义设备的参数配置逻辑。通过深入分析I2C协议基础、StreamI2C参数映射关系及典型设备配置示例,帮助开发者快速掌握StreamI2C的应用技巧,解决实际开发中的常见问题。

weixin_30932215的博客 445

【实战教程】OpenClaw接入MySQL数据库实战指南

本文介绍了在虚拟机Ubuntu中访问宿主机Win11中MySQL数据库的配置方法,重点包括创建远程用户、权限配置和安全设置。首先在MySQL中创建具有只读权限的用户并刷新权限,然后调整服务器设置允许远程连接。文章还提供了某金融机构财富管理系统的数据库设计方案,包含理财产品表、客户表和份额表的核心结构,其中金额字段使用DECIMAL类型确保精度,并设置唯一键约束。文末强调测试环境配置完成后应恢复安全更新模式以保障生产环境安全。

海兰 8694

行为预测模型:Social LSTM与Graph Neural Networks

行为预测模型:Social LSTM与Graph Neural Networks ,人工智能,计算机视觉,大模型,AI,本文围绕行为预测模型Social LSTM与Graph Neural Networks展开,介绍了两者的基础概念、原理、应用场景,还对比了它们在优势、劣势和适用场景上的不同,最后给出了相应的代码示例。Social LSTM基于LSTM,通过社交池化层处理多智能体交互;图神经网络处理图结构数据,靠消息传递获取信息,二者各有侧重,适用于不同场景。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 15万+

《Zephyr OS 入门与实战》第3章:第一个 Zephyr 程序 - Blinky 实战

解决方法:确认设备树overlay文件已正确加载。返回值,确认驱动初始化状态。

2301_79143213的博客 537

Python 实战:爬取高德地图交通数据(路况拥堵指数分析)

高德地图是由高德软件有限公司开发的一款地图导航产品,提供详细的地图浏览、路线规划、实时路况、公共交通查询等功能。高德地图拥有庞大的用户群体和海量的交通数据,这些数据对于交通管理、城市规划、出行服务等领域具有重要的价值。通过对高德地图交通数据的分析,我们可以了解城市交通的运行状况,识别拥堵路段,预测交通流量,为交通管理部门和出行者提供决策支持。

yansideyucsdn的博客 2683

DeepSeek邮件管理全攻略

DeepSeek邮件助手是一款高效的邮件处理工具,提供智能分类、撰写、回复和任务自动化功能。通过API调用或多智能体系统,它能自动分类邮件意图、生成专业回复并优化邮件内容。核心功能包括智能过滤、会议安排和任务提醒,支持与主流邮箱服务集成。提供精准提示词模板,帮助用户快速生成得体邮件,提升工作效率。适合个人和企业使用,通过简单配置即可实现邮件处理自动化。

Genio_Wang的博客 179

基于点云数据的统计滤波算法改进

随着三维视觉和点云处理技术的发展,点云数据在机器人、自动驾驶、增强现实等领域得到了广泛应用。而点云数据中常常包含着各种噪声和异常点,这些噪声和异常点会影响后续的数据处理和分析任务。因此,对点云数据进行滤波处理是必不可少的一步。在点云滤波算法中,统计滤波(Statistical Filtering)是一种常见且有效的方法。它通过对点云数据进行统计分析,将噪声和异常点剔除或修复,从而得到更为准确和可靠的点云数据。本文将介绍一种改进的统计滤波算法,并提供相应的源代码实现。

QfcaLinux的博客 290

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

上一篇: 智能指针(unique_ptr)
下一篇: 设计模式——工厂模式
码上看世界
博客等级 码龄11年 63粉丝 124原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值