C++ 会变成像 Rust 一样的安全语言吗?

💡 原文中文,约1900字,阅读约需5分钟。
📝

内容提要

C++专家Herb Sutter建议通过依赖工具、推广安全语言特性以及显式启用不安全特性来提高C++的安全性。Bjarne Stroustrup表示赞同,并提到ISO委员会在C++配置文件方面所做的工作。批评者认为,与Rust相比,C++在内存安全性方面仍然存在不足,例如线程安全。Sutter和Stroustrup认为,配置文件是使C++更安全的关键特性,而不会限制其表达能力。Sutter提供了具体建议,以帮助ISO委员会实现减少C++代码中CVE的目标。

Q&A

C++如何提高安全性?

C++可以通过依赖工具、推广安全语言特性和显式启用不安全特性来提高安全性。

Herb Sutter提到的四种内存安全漏洞是什么?

四种内存安全漏洞包括越界读、越界写、空指针解引用和访问已释放内存。

Bjarne Stroustrup对C++安全性的看法是什么?

Stroustrup认为C++可以像Rust一样安全,但不那么复杂,并支持ISO委员会的安全规则工作。

C++配置文件的作用是什么?

C++配置文件是一组规则,旨在强制执行安全行为,确保代码的类型安全、边界安全和生命周期安全。

C++与Rust在内存安全性方面的比较如何?

批评者认为C++在内存安全性方面仍存在不足,特别是在线程安全等领域,而Rust则提供了更多相关机制。

Sutter对C++安全规则的建议是什么?

Sutter建议C++应严格执行安全规则,默认启用安全规则,只有在程序员明确选择时才允许不安全行为。

🏷️

标签

➡️

继续阅读