
如果您尝试在Sublime Text中编译C++代码,但遇到不支持C++11特性的问题,则可能是由于编译器未启用C++11标准。以下是解决此问题的步骤:
通过编辑Sublime Text中的.build文件,可以直接添加-std=c++11编译参数,使g++按照C++11标准进行编译。
1、打开Sublime Text,点击菜单栏的Tools → Build System → New Build System…。
2、将默认内容替换为以下JSON结构,并根据您的编译器路径和需求进行调整:
立即学习“C++免费学习笔记(深入)”;
{
"cmd": ["g++", "-std=c++11", "${file}", "-o", "${file_path}/${file_base_name}"],
"file_regex": "^(..[^:]*):([0-9]+):([0-9]+):? (.*)$",
"working_dir": "${file_path}",
"selector": "source.c, source.cpp",
"shell": true,
"variants": [
{
"name": "Run",
"cmd": ["bash", "-c", "g++ -std=c++11 '${file}' -o '${file_path}/${file_base_name}' && '${file_path}/${file_base_name}'"]
}
]
}
3、保存文件为
C++11.sublime-build
4、保存后,在Sublime Text中选择Tools → Build System → C++11作为当前构建系统。
在构建系统中定义多个变体(variant),可以在一次配置中完成编译和运行两个操作,提升开发效率。
1、在构建系统文件中,除了主编译命令外,添加一个名为Run的变体,用于执行生成的可执行文件。
2、使用快捷键Ctrl+Shift+B调出构建选项,可以选择“C++11”仅编译,或选择“C++11 - Run”直接运行程序。
3、确保终端能够正确输出结果,可在cmd或bash环境中测试生成的可执行文件是否正常运行。
确认-std=c++11参数已成功应用,可通过编写使用C++11特性的代码来测试,例如auto关键字或范围for循环。
1、编写测试代码:
#include <iostream>
#include <vector>
int main() {
std::vector<int> v = {1, 2, 3};
for (auto x : v) std::cout << x << " ";
return 0;
}
2、使用配置好的构建系统进行编译和运行。
3、若输出为1 2 3且无编译错误,则说明-std=c++11参数已正确加载。
以上就是Sublime运行C++11标准代码_在构建系统中添加-std=c++++11参数的详细内容,更多请关注php中文网其它相关文章!
c++怎么学习?c++怎么入门?c++在哪学?c++怎么学才快?不用担心,这里为大家提供了c++速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号