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

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

相关推荐
kk”3 小时前
Linux的组和权限管理
linux·运维·服务器
吃着火锅x唱着歌4 小时前
Effective C++ 学习笔记 条款43 学习处理模板化基类内的名称
c++·笔记·学习
mohesashou4 小时前
红帽linux的K8S部署
linux·kubernetes·ansible
felixking5 小时前
C++20 协程
开发语言·c++·协程
xiaoye-duck5 小时前
《Linux网络编程》UDP Socket 编程实战:从 Echo 回显、通用字典服务到套接字封装全流程
linux·网络·udp
孙克旭_6 小时前
Docker 镜像构建|Vue+SpringBoot+Go 多语言项目 Dockerfile 案例
linux·运维·vue.js·spring boot·docker·dockerfile
life码农6 小时前
Linux截取Nginx指定时间段日志的三种方法(grep/awk/sed)
linux·nginx
Dawn-bit6 小时前
Linux网络进阶:TCP三次握手和四次挥手与TCP连接状态
linux·服务器·网络·tcp/ip·云计算·智能路由器
小小龙学IT7 小时前
FlatBuffers 深度解析:Google 开源零拷贝序列化库完全指南
c++·开源