C++ linux vscode编译

.cpp .h文件关系与编译命令

单一cpp文件编译

复制代码
//test.cpp为测试源文件, a.out为输出可执行文件
g++ test.cpp -o a.out

多个.cpp文件编译

目录1结构如下:

复制代码
|----main.cpp
|----src
		|----swap.cpp

编译命令如下:

复制代码
g++ main.cpp src/swap.cpp -o b.out

.h头文件和.cpp源文件在同一目录下编译

目录结构如下:

复制代码
|----main.cpp
|----swap.cpp
|----swap.h

编译命令如下: -I. 表示自定义头文件路径在当前目录(大写的i)(也可以不加-I.)

复制代码
g++ main.cpp swap.cpp -I. -o c.out
g++ main.cpp swap.cpp -o c.out

.h头文件和.cpp源文件在不同一目录下编译

目录1结构如下:

复制代码
|----main.cpp
|----swap.cpp
|----src
	   |----swap.h

编译命令如下: -I. 表示自定义头文件路径在当前目录(大写的i)

复制代码
g++ main.cpp swap.cpp -Isrc -o d.out

目录2结构如下:

复制代码
|----source
		|----swap.cpp
|----src
		|----swap.h

编译命令如下: -I. 表示自定义头文件路径在当前目录(大写的i)

复制代码
g++ source/swap.cpp -Isrc -o e.out

注意:命令在根目录下运行

相关推荐
眠修5 分钟前
Kuberrnetes 服务发布
linux·运维·服务器
小小小小王王王1 小时前
求猪肉价格最大值
数据结构·c++·算法
岁忧2 小时前
(LeetCode 面试经典 150 题 ) 58. 最后一个单词的长度 (字符串)
java·c++·算法·leetcode·面试·go
码农编程录3 小时前
【c/c++3】类和对象,vector容器,类继承和多态,systemd,std&boost
c++
即将头秃的程序媛3 小时前
centos 7.9安装tomcat,并实现开机自启
linux·运维·centos
fangeqin3 小时前
ubuntu源码安装python3.13遇到Could not build the ssl module!解决方法
linux·python·ubuntu·openssl
??tobenewyorker4 小时前
力扣打卡第二十一天 中后遍历+中前遍历 构造二叉树
数据结构·c++·算法·leetcode
爱奥尼欧4 小时前
【Linux 系统】基础IO——Linux中对文件的理解
linux·服务器·microsoft
超喜欢下雨天5 小时前
服务器安装 ros2时遇到底层库依赖冲突的问题
linux·运维·服务器·ros2
oioihoii5 小时前
C++11 forward_list 从基础到精通:原理、实践与性能优化
c++·性能优化·list