我知道我们可以使用 g++ 编译器将程序编译为 C++。但g++编译器默认为98版本。要将其作为 C++ 14 运行,我们需要添加-std=c++14
在终端。
Sublime Text 因其轻量级和功能而被认为是竞争性编程中有价值的编辑器。在这些比赛中,时间很重要,因此时间被浪费在复制文本文件然后从终端运行上。与 98 相比,C++ 14 具有丰富的库和其他重要功能。因此,人们希望能够在 Sublime Text 上以 C++ 14 的方式编译代码。
但是,如何确保当我在 Sublime Text 3 中编译代码时,它会默认编译为 C++14?
经过一番摆弄后,我想出了以下解决方案 -
- 转到packages并解压C++.sublime-package
- 打开 C++ 单个文件.sublime-build
-
Change
"shell_cmd": "g++ \"${file}\" -o \"${file_path}/${file_base_name}\" && \"${file_path}/${file_base_name}\""
to
"shell_cmd": "g++ -std=c++14 \"${file}\" -o \"${file_path}/${file_base_name}\" && \"${file_path}/${file_base_name}\""
Added -std=c++14
在构建和运行中
- 保存并覆盖原来在 Sublime Text 3 中的包
这是正确的方法吗?它被命名为单个文件 - 如果我想使用多个文件,这是需要担心的吗?
最好创建一个新的构建系统,具体方法如下:
点击Tools -> Build System -> New Build System
.
这就是我使用的(注意标志-std=c++14
)
{
"cmd":["bash", "-c", "g++ -std=c++14 -Wall '${file}' -o '${file_path}/${file_base_name}' && '${file_path}/${file_base_name}'"],
"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
"working_dir": "${file_path}",
"selector": "source.c, source.c++",
"variants":
[
{
"name": "Run",
"cmd":["bash", "-c", "g++ -std=c++14 '${file}' -o '${file_path}/${file_base_name}' && '${file_path}/${file_base_name}'"]
}
]
}
(我相信您可以使用已有的行并将其保存到新的构建系统文件中。)
现在保存新版本,选择它Tools -> Build System
.
现在您可以构建并运行CTRL + B
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)