You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu下如何将Clang默认设置为C++17版本?

解决Clang默认使用C++17标准的问题

你的报错是因为Clang默认采用的C标准版本低于C17,而inline变量是C++17引入的特性,下面是两种解决方式:

一、编译时临时指定C++17标准

在编译命令中添加-std=c++17参数(纯标准C17),或者-std=gnu++17(包含GNU扩展特性的C17),示例命令:

clang++ -std=c++17 your_source.cpp -o output_executable

如果需要临时关闭相关警告,也可以加上-Wno-c++17-extensions,但更推荐直接指定标准来从根源解决问题。

二、永久设置Clang默认使用C++17

如果你想让每次调用clang++都默认使用C++17,可以通过shell别名实现:

  1. 打开你的shell配置文件,Bash用户编辑~/.bashrc,Zsh用户编辑~/.zshrc:
nano ~/.bashrc
  1. 在文件末尾添加以下别名:
alias clang++='clang++ -std=c++17'

如果需要启用GNU扩展特性,就写成:

alias clang++='clang++ -std=gnu++17'
  1. 保存文件后,执行命令使配置立即生效:
source ~/.bashrc

之后再用clang++编译代码时,就会自动使用C++17标准了。

内容的提问来源于stack exchange,提问作者Cookie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 14:50:44