vscode 编译C++ 程序

2023-05-16

1 单文件编译

在安装了 Code Runner 插件后,可以直接点击左上角运行按钮运行。
在这里插入图片描述
这个插件实际上是运行了一下的命令:

cd "f:\c++\test\" ; if ($?) { g++ test.cpp -o test } ; if ($?) { .\test }

这样就可以生成对应的 .exe 文件。可以运行 xxx.exe 文件来测试效果。

2 多文件编译 (有问题待解决)

我是安装了C/C++ project generator 插件创建了一个project.
在这里插入图片描述
创建后的文件目录如下:
在这里插入图片描述
在对应的文件下写入多个 .cpp 文件:
在这里插入图片描述
如果按照单文件直接运行 main.cpp 会报如下的错误。
在这里插入图片描述
这是因为它实际运行的命令是:

cd "f:\c++\exp2\src\" ; if ($?) { g++ main.cpp -o main } ; if ($?) { .\main }

并没有指定对应的头文件文件夹。如果将命令手动改为:

 g++ .\main.cpp .\sw.cpp -I ..\include\ -o main  

这样通过 -I ..\include\ 指定了头文件的文件夹目录则不会报错。

更简单的方法则是直接按 F5 或者是 Run>Start Debugging进行编译和debug。实际它运行的任务是:
在这里插入图片描述
存在的疑惑为:

g++ -std=c++17 -Wall -Wextra -g -Iinclude -c src/main.cpp  -o src/main.o
g++ -std=c++17 -Wall -Wextra -g -Iinclude -c src/sw.cpp  -o src/sw.o
g++ -std=c++17 -Wall -Wextra -g -Iinclude -o output\main.exe src/main.o src/sw.o  -Llib

这3行命令是在哪里定义的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

vscode 编译C++ 程序 的相关文章

随机推荐