GCC 11 将默认前端语言为 C++ 17,C++ 14 被替换

来源: OSCHINA
编辑: oschina
2020-06-28 08:45:16

GCC 11 会将默认前端语言从 C++14 变更为 C++ 17。



从 GCC 9 开始,对 C++ 17 的支持已经不再是实验性质,C++ 前端实现了完整的 C++ 17 语言,并且 C++ 标准库支持几乎也完成了(不过目前还有两个库特性有待完善)。

目前在 GCC 中,当不指定任何版本 C++ 标准时,默认版本是 C++ 14(从 GCC 6.1 开始)。但是随着 GCC 对 C++ 17 的支持现在已经有一年以上的成熟期,并且 GCC 11 将于明年发布,开发团队认为是时候将 C++ 17 用作 GCC 11 的默认前端了。虽然可以在 GCC 10 中进行此更改,但是它已经进入周期的后期阶段,没有太多时间来解决可能出现的任何后果;而虽然 GCC 已经在不断支持 C++ 2a/C++ 20,但目前要进行默认的转换还为时过早。

26 日,GCC 11 源码中已经将 C++ 17 更改为默认前端语言。C++ 17 有许多新的特性,包括:删除 trigraphs、在模板参数中允许使用 typename(作为替代类)、来自 braced-init-list 的新规则用于自动推导、UTF-8 字符文字与一些用于对齐内存分配的扩展等,迁移到 C++ 17 对于 GCC 与开发者来说有众多优势。

展开阅读全文
精彩评论
条件允许的话,能用新技术,就用一下。当然解决问题是优先考虑的,有时间的话建议体验一下。毕竟语言层面的技术提升只是技术提升的策略之一。
2020-06-28 09:41
6
举报
希望C++语法能多像Python一样,
简单点,代码的方式简单点,递进的语法请省略,你又不是个剧本,  别设计那些情节。没意见,我只想看看你怎么圆 ,你实现的太复杂,像古代的裹脚布,码农一眼难看穿
2020-06-28 11:26
5
举报
c++20由于疫情,两次会议都取消了,还影响了C++23!个人更看重C++23,她将C++20的很多特性,都以库的形式发布,C++20还有一些标准库没有落实。
2020-06-28 10:29
5
举报
很多库都是boost搬过来的。最希望的还是有个简单好用的网络标准库,asio还是太复杂了
2020-06-28 11:08
4
举报
你这个希望是不可能实现了。
2020-06-29 10:56
2
举报
14 收藏
分享
17 评论
14 收藏
分享
返回顶部
顶部
返回顶部
顶部