转自:OSC开源社区(ID:oschina2013)
与安全有关的问题有两个。在数十亿行的 C++ 中,很少有完全遵循现代准则的,而且人们对安全的哪些方面是重要的概念也不尽相同。我和 C++ 标准委员会正在努力解决这个问题。
Profiles 是一个框架,用于指定一段代码需要什么保证,并启用实现来验证它们。委员会网站上有描述这一点的文件(可查看 WG21),并且还会有更多文件。然而,我们中的一些人没有心情等待委员会必然缓慢的进展。
Profiles 是一个框架,允许我们逐步改进 guarantees —— 例如,相对较快地消除大多数 range errors,并通过本地静态分析和最少的运行时检查逐步将 guarantees 引入大型代码库。
我对 C++ 的长期目标一直是在需要的时候提供类型和资源安全。也许当前对内存安全的推动 —— 我想要的 guarantees 的一个子集 —— 将有助于我的努力,C++ 标准委员会中的许多人也认同这一点。
Stroustrup此前针对 NSA 捍卫了 C++ 的安全性表示赞赏,但之后 NSA 在2022 年 11 月的公告中,建议开发者使用内存安全语言,而不是 C++ 和 C。
相关链接
https://www.infoworld.com/article/3714401/c-plus-plus-creator-rebuts-white-house-warning.html