一位匿名讀者引用了 InfoWorld 的一篇報導。 C++ 開發人員 Bjarne Streustrup 回應了拜登政府的一份報告,該報告敦促開發人員使用記憶體安全語言,並避免使用 C++ 和 C 防禦程式語言等易受攻擊的語言。 在 3 月 15 日對 InfoWorld 詢問的回覆中,它表示: Stroustrup 指出了 1979 年設計的 C++ 的優勢。 「令人驚訝的是,這些政府文件的作者似乎沒有意識到現代 C++ 的優勢以及為提供強有力的安全保證所做的努力,」Stroustrup 說。 “另一方面,他們似乎認識到程式語言只是工具鏈的一部分,因此改進工具和開發流程至關重要。”
Stroustrup 強調,提高安全性始終是 C++ 開發工作的目標。 「自從C++ 誕生以來及其整個發展過程中,提高安全性一直是C++ 的一個目標。將K&R C 語言與早期C++ 進行比較,將早期C++ 與現代C++ 進行比較。我的CppCon 2023 主題演講概述了它的演變,」他說。 「許多高品質的 C++ 都是使用基於 RAII(資源獲取即初始化)、容器和資源管理指標的技術編寫的,而不是傳統的 C 風格的指標混亂。」Stroustrup 他列出了一些提高安全性的努力C++ 的。 「在安全性方面有兩個問題:C++ 中的數十億行中很少有完全符合最新指南的,而且人們不確定安全性的哪些方面是重要的。」概念是不同的。我和 C++標準委員會正在努力解決這個問題,」他說。 「設定檔是一個框架,用於指定一段程式碼所需的保證並允許實作驗證它們。委員會的網站上有一份文件對其進行了解釋,如果您查找WG21,請尋找。更多文件正在發布。但是我們中的一些人不參加。有一種等待委員會進展必然緩慢的氣氛。”
Stroustrup 說:「分析是一個框架,允許您逐步改進保證,例如透過本地靜態分析和最少的運行時檢查相對快速地消除大多數範圍錯誤。」允許將保證逐步引入大型程式碼庫。C++ 的長期目標是在您需要的時間和地點提供類型和資源安全。正在提倡的記憶體安全(我想要的一些保證)將有助於我的努力,因為C++ 標準委員會的許多人都認同這一點Stroustrup 此前曾於2022年11 月撰文,針對NSA 捍衛C++ 的安全性,NSA 在其月度公告中建議使用記憶體安全語言,而不是C++ 和C。