写点什么

GCC 4.8 发布,完成向 C++ 的迁移

  • 2013-03-29
  • 本文字数:846 字

    阅读完需:约 3 分钟

GNU 编译器集合(GCC)的最新版本发布,这标志着向C++ 的迁移已经完成。这一过程持续了多年,GCC 团队指出,为了有一个可维护的代码基来吸引并留住新的项目成员,这种迁移是必要的。之所以选择C++ ,部分原因是它是标准化的语言,而且 "支持更干净的代码,更容易编写并保证清晰的接口……尽管这并非灵丹妙药,但相对于基于C 的遗留代码,的确是种改进”。对大部分开发者来说,最终结果不过是,如果有兴趣从源代码构建GCC 4.8,则必须使用支持C++ 2003 的编译器。该版本设计得更为高效,更容易更新,普通用户可以直接受益。

新的编译器特性

首先介绍一下通用的编译器改进,该版本“引入了一个新的通用优化层,既满足了快速编译和极佳调试体验的需要,又保证了合理的运行时性能”。此外,4.8 包含了用于探测内存错误的 AddressSanitizer ,以及支持插入指令检查数据竞争的 ThreadSanitizer 。(ThreadSanitizer 目前只能用于 x86-64 GNU/Linux。)

值得注意的是,该版本还支持 64 位 ARM(AArch64)和 32 位 ARMv8 等架构。

特定于语言的改进

完成了向 C++ 的迁移,这并不是唯一值得赞赏的成绩,编译器在其他一些方面还有不少改进。GCC 目前初步在多种架构上实现了针对 GNU/Linux 和 Solaris 等平台的 Go 1.1 支持。如果使用 Fortran 和 C 进行开发的话,也有一些更新值得研究一番。

C++ 用户会看到如下对 C++11 支持的改进

  • thread_local 关键字
  • attribute 语法
  • 对齐说明符(alignment specifier)
  • 继承构造函数
  • forward_list 满足了能够感知分配器(allocator-aware)的容器这一需求

Clang 3.2 相比,GCC 4.8 对 C++11 的支持也非常不错,而且都领先于最新的 Visual C++ Compiler November 2012 CTP 。新增了编译选项 _-std=c++1y_,支持对下一个主要标准(预计大约在2017 年)提出的特性进行实验,这意味着应对未来C++ 变化的计划已经开始。

C++ 运行时标准库(libstdc++)对 C++11 有了更大的支持,改进了随机数生成器(包括新的 X86 处理器上的硬件支持),并加入了新的随机数分布。

查看英文原文 GCC 4.8 Completes Move to C++

2013-03-29 04:444681
用户头像
臧秀涛 略懂技术的运营同学。

发布了 300 篇内容, 共 148.3 次阅读, 收获喜欢 35 次。

关注

评论

发布
暂无评论
发现更多内容

NocoBase 本周更新汇总:优化及缺陷修复

NocoBase

开源 低代码 零代码 无代码 版本更新

阿里云服务器对接高防的时候可能会出现的问题

网络安全服务

CDN udp DDoS 阿里云服务器 高防IP

《汽车之家2024年ESG报告》发布 技术创新驱动行业可持续发展

科技大数据

怎么用AI工具一键美化PPT?AI美化PPT步骤详解!

职场工具箱

人工智能 PPT 办公软件 AIGC AI生成PPT

开源协议不能随便选!选错直接被「背刺」

程序员晚枫

开源

突破极限: 高负载场景下的单机300M多行正则日志采集不是梦

阿里巴巴云原生

阿里云 云原生

什么是 StarRocks?核心优势与适用场景解析

镜舟科技

数据库 存算分离架构 StarRocks 实时分析 极速查询

Databend Cloud Dashboard 全新升级:直击痛点,释放数据价值

Databend

MiniMax 发布新 TTS 模型 Speech-02,轻松制作长篇有声内容;Meta 高端眼镜年底推出:售价上千美元丨日报

声网

字符串替换研究

京东零售技术

【招生简章】司库管理案例实践高端研修班

用友智能财务

财经 会计

Vision 2025:助力客户取得成功,是英特尔的第一要务

E科讯

Flink Shuffle 技术演进之路

Apache Flink

大数据 实时计算 Flink Shuffle

One4All下一代生成式推荐系统

京东零售技术

StarRocks 助力首汽约车精细化运营

StarRocks

数据库 spark 存算分离 StarRocks 数据查询

ClickHouse 的“独孤九剑”:极速查询的终极秘籍

京东零售技术

Kubernetes APIServer 可观测最佳实践

观测云

Kubernetes

Fabric8 Kubernetes 教程——Metrics、Resource

FunTester

PowerVerse&HiBao Cloud已在杭州、深圳、天津等地部署算力节点

PowerVerse

DePIN 去中心化云算力 DeCloud

食品行业数字化:MES系统解决方案

万界星空科技

mes 食品饮料行业数字化转型 食品MES 食品加工行业

One4All下一代生成式推荐系统

京东零售技术

【赠 3 日通票】4 月 10-12 日,融云「展位 B11」在 QCon 北京站恭候莅临~

融云 RongCloud

中国上市企业精益战略

管理在线

精益管理体系

终于等到机会!这轮周期牛市预计比特币涨到$50万左右

PowerVerse

打造探索式测试智能体—Scoutron

技艺的尾巴

AI 智能体 探索式测试

得物 iOS 启动优化之 Building Closure

得物技术

ios dyld

与 AI 共处 72 小时,没有食物、水、手机,会发生什么|寻找「赛博鲁滨逊」

声网

Get 笔记:解锁演讲稿高效准备新密码

TechLead Studio

SvelteKit 最新中文文档教程(17)—— 仅服务端模块和快照

冴羽

Vue 前端 React Svelte SvelteKit

星闪破壁,鸿蒙筑家:智慧家庭聚变2025

脑极体

AI

服装智能制造软件平台(源码+文档+讲解+演示)

深圳亥时科技

GCC 4.8发布,完成向C++的迁移_Linux_Jeff Martin_InfoQ精选文章