自我感觉良好
过去三四年来,随着这些漏洞被高调利用并造成经济损失,业界和政府的网络安全专家一直在劝阻使用 C 和 C++,同时大力推广具有更好内存安全性的语言,如 Rust、Go、C#、Java、Swift、Python 和 JavaScript。
该项提案将由名为 “C++ Alliance” 的机构与工程师 Sean Baxter 合作开发,C++ Alliance 计划将「Safe C++」扩展提案提交给 ISO,以纳入 C++ 标准。
面对 Rust 的浩大攻势,C++ 阵营这边则警惕地组织起防守阵形。两年之前,在回应 Russinovich 对于弃用 C/C++ 的呼吁时,C++ 语言的缔造者 Bjarne Stroustrup 就在采访中坦言,“我们现在可以在 ISO C++ 中实现完美的类型与内存安全保障。”
自从美国白宫对开发者呼吁,“停止使用 C 和 C++,改用 Rust 等内存安全编程语言”后,两方之间从未停止的争论就被推到了一个新高度。而在这之中,也有部分 C++ 开发者提议:或许 Rust 中的一些概念,可以试着运用到 C++ 编程中?
对于如何使 C++ 成为一种类似 Rust 及其他内存安全语言(MSL)的安全语言,C++ 专家、ISO C++ 委员会主席 Herb Sutter 在最近的一篇文章中表达了他的看法
本文作者希望通过这篇文章,让开发者深入了解 C++ 中的 NaN 值及其有效处理方式。
让 C++ 成为更安全语言的道路复杂而充满挑战。然而,由 Stroustrup 主导并得到广大 C++ 社区支持的讨论和建议,为我们指明了一条既尊重 C++ 语言传统
赦免
如果我把 C++ 换成 “非 C++”,我 80% 的工作将保持不变。C++ 与我的大部分工作根本无关。这是否意味着对我来说,C++ 已经死了 80%?
Bjarne Stroustrup 说,拜登政府似乎对当代 C++ 的优势和提供强有力安全保障的努力视而不见。
让某些程序行为成为错误,却不给开发人员提供任何方法来判断他们的代码是否执行了这些行为,以及如果执行了,在哪里执行,这基本上就是邪恶的。
谷歌 Gemini 最近又出了一个奇葩错误:如果你未满 18 岁,Gemini 就不会向你提供 C++ 编程方面的帮助,因为 C++对未成年人来说“太危险”了。
拜登政府呼吁开发人员采用内存安全编程语言,摒弃那些会导致缓冲区溢出和其他内存访问漏洞的语言。
我不希望这变成一场语言大战。我的问题是出于善意,而且我确实想从在这里发表评论的人们那里汲取智慧。使用 Rust 的时间比我长得多的人可以提供我可能不知道的宝贵见解。因此,为了避免 “火焰战争”,请允许我尽可能具体地说明这个问题:
在 CppCon C++ 会议上,这位 C++ 的创建人明确了该编程语言中迫切需要的安全措施具体都有哪些。
在过去几年中,C++ 社区一直在应对社交媒体上的挑战、所谓继任者的呼声以及即将出台的反 C++ 安全法规的迹象。除此之外,委员会还面临着相互竞争的设计和确定优先级的困难
C++ 是一种 “双峰 “语言。也就是说,C++ 是我所知道的唯一一种有两种截然不同的程序员认为自己精通该语言的语言。
C++变化太大!该重新学习这门语言了
尽管 C++ 最初是基于 C 创建的,但随着时间的推移,这两种语言已经越来越不相似,并且在许多方面也存在差异。
除了轰炸,我不知道还有什么方法可以比功能蔓延更有效地摧毁一门编程语言
已经存在了近 40 年的 C++,颇受欢迎也争议不断。
为什么在设计编程语言时,我们应该采取极简主义的思想。
Linus Torvalds:“C++ 真是一门很烂的语言!”
40岁C++没有中年危机
他们知道你手机上的全部应用程序
20 年前的 exe 现在仍然可以在 Windows 上运行,linux 呢?
战争故事:我调试过的最难的错误
在选择 Next.js 之前,您应该了解这些信息
非官方 Windows 7 Service Pack 2
进化中的 SCALA 语言
氧化 Ubuntu:默认采用 Rust 实用工具
我认识的最糟糕的程序员
初级开发人员的复仇