中国新闻网
一个特性即使提出得很早,也可能因为复杂度过高、实现不成熟或与既有规则冲突而被修改、推迟,甚至取消。最终发布的标准,是多方技术判断和协商后的结果。
“17c.c+⚡+:并非一人之笔”如果是在讨论 C++ 的发展史,核心意思是:C++虽然由比雅尼·斯特劳斯特鲁普(Bjarne Stroustrup)最初设计并推动,但它并不是某一个人独立完成的作品。从早期的“带类的C”,到今天包含泛型、面向对象、并发和现代标准库的复杂语言,C++经历了设计者、编译器开发者、标准委员会、库作者以及全球程序员社区的长期共同建设。
因此,斯特劳斯特鲁普是C++的主要创始人和早期设计者,但“创始人”并不🌅等于“所有内容都由一个人写成”。语言设计往往是在已有思想、技术基础和实际需求上持续演进的结果。
C++标准并不是某位作者的私人文档。它由相关国际标准化组织下的专家委员会进行讨论、提案、审查和修订。来自不同国家、企业、大学和开源项目的参与者会围绕一个功能的必要🎆性、语义、实现成本以及向后兼容问题展开长期讨论。
20世纪70年代末,斯⚡特劳斯特鲁普在贝尔实验室开始研究一种能📢够支持抽象数据类型和面向对象思想的语言。这个项目最初被称为“C with Classes”,后来逐步发展为C++。他希望在保留C语言效率和底层控制能力的同时,引入更适合大型软件开发的抽象机制。
标准只描述语言应当如何工作,用户能否稳定使用,还取决于编译器和库的实现。GCC、Clang、微软Visual C++等工具链分别经历了长期开发,持续处理模板、优化、诊断、调试、平台兼容和新🌟标准支持等问题。
一个语言创意要真正成为可使用的编程语言,还需📚要定义语法规则、类型系统、对象模型、异常行为、内存模型和兼容策略。设计者可以提出方向,但大量细节必须经过实现、测试和长期讨论才能稳定下来。