-
17c.c++并非一人之笔
“17c.c++:并非一人之笔”如果是在讨论 C++17,核心意思是:C++17 并不是某一位程序员独自写出的程序,也不是一个人单独决定的语言版本,而是由语言设计者、标准委员会成员、提案作者、编译器与标准库维护者以及开发者社区共同推动形成的标准。
需要先澄清的是,“17c.c++”并不是 C++ 标准的正式写法。技术资料中通常写作“C++17”,它指的是 C++ 在 2017 年发布的一代语言标准。因此,“并非一人之笔”强调的是 C++17 的形成过程,而不是在说明某个具体源代码文件的作者数量。
C++的最初设计者,不等于C++17的唯一作者
C++ 的早期设计与 Bjarne Stroustrup 密切相关。他在 C 语言基础上吸收了 Simula 等语言的面向对象思想,逐步设计并发展出 C++。从语言历史的角度看,把他称为 C++ 的主要创始人或最初设计者是合理的。
但一门语言从早期设计走向成熟标准,涉及的内容远远超过某个人能够独立完成的范围。语法规则、类型系统、模板、异常、并发、标准库、编译器行为和兼容性都需要长期讨论。C++11、C++14、C++17 以及后续标准,都是在既有成果上不断修订和扩展的结果。
所以,下面两种说法表达的对象并不相同:
“C++创始人”与“C++17共同制定者”的区别 说法 准确含义 C++的主要创始人 强调语言早期的核心设计和历史起点 C++17的作者 容易造成误解,因为标准由多人协作制定 C++17提案作者 通常只对应某项特性或某组设计,并不代表整套标准 C++17标准的制定参与者 包括委员会成员、提案作者、审阅者、实现者和反馈者等 哪些人共同写下了C++17
C++17 的标准化工作主要在 ISO/IEC 体系下的 C++ 标准工作组 WG21 中推进。WG21 并不是一个由单一负责人闭门写作的团队,而是由来自不同国家、公司、研究机构和开源项目的专家共同参与。不同参与者关注的重点也不一样。
- 语言设计者:负责提出或完善语法、类型系统、模板机制、常量表达式等语言功能,使新特性能够与既有 C++ 规则保持一致。
- 标准库设计者:围绕容器、算法、字符串、文件系统和通用工具等内容提出方案,处理接口命名、类型约束、异常行为和可移植性问题。
- 提案作者:通常会针对某个明确问题撰写提案,说明使用场景、设计取舍、示例代码和可能的兼容性影响。
- 核心语言与库工作组:会审查提案的技术细节和标准措辞,找出歧义、冲突或无法实现的部分。
- 编译器和标准库维护者:通过实现试验验证方案是否可行,并反馈编译成本、二进制兼容性、错误诊断和实际使用中的问题。
- 普通开发者和用户:真实项目中的反馈能够暴露设计在大型工程、跨平台开发和旧代码兼容方面的缺陷。
因此,一项功能可能有明确的提出者,但最终进入标准时,往往已经经过多轮修改。提案作者提供了重要起点,其他参与者则共同决定它是否成熟、如何表述以及怎样与整个语言生态兼容。
一个C++17特性如何进入正式标准
“并非一人之笔”不仅体现在参与者很多,也体现在标准形成有一套反复审查的过程。一个想法从提出到成为 C++17 的正式内容,通常要经历以下环节:
- 先发现实际问题:开发者可能需要更安全的类型封装、更简洁的语法,或者缺少可移植的文件系统接口。
- 形成书面提案:提案需要解释问题、给出接口或语法设计,并说明与现有规则的关系。
- 会议讨论和修改:委员会会比较不同方案,讨论命名、边界条件、性能、错误处理和向后兼容。
- 进行实现验证:编译器和标准库实现者会尝试支持该方案,实践中发现的问题可能促使提案重新设计。
- 审查标准措辞:功能设计获得认可后,还需要把它写成足够精确的标准语言,避免不同实现产生不一致的结果。
- 经过正式采纳:只有完成相应的委员会流程并纳入标准文本,功能才成为 C++17 的标准内容。
这个过程也意味着,并不是所有看起来有价值的建议都会进入某一版标准。有些提案需要继续完善,有些会因为实现代价、兼容性风险或缺少共识而推迟到后续版本,还有一些方案可能最终被其他设计取代。
C++17中的代表性成果为何能体现协作
C++17 引入了多项开发者经常使用的语言和库功能。例如,结构化绑定让程序可以更方便地拆解返回值和聚合对象;if constexpr 改善了模板代码中的条件分支;折叠表达式简化了可变参数模板的处理;内联变量解决了部分头文件定义和链接方面的问题。
在标准库方面,std::optional 用于表达“可能没有值”的结果,std::variant 提供了类型安全的多类型存储,std::any 适合保存类型在运行时才确定的对象,std::string_view 可以在不拥有字符串内容的情况下提供轻量访问。文件系统库也在这一版本中成为标准库的重要组成部分。
这些功能背后通常都有具体提案和主要贡献者,但从“某个功能的设计者”推导出“C++17整套标准的唯一作者”并不准确。功能之间需要保持统一的命名风格、生命周期规则、异常约定和泛型接口,这些协调工作本身就需要集体审查。
阅读这句话时最容易产生的误解
如果在文章标题、视频标题或项目说明中看到“17c.c++:并非一人之笔”,可以从三个层面理解。第一,它可能是在用不正式的写法指代 C++17;第二,它强调的是标准化协作,而不是否定某位设计者的贡献;第三,它不一定能证明某个具体项目或页面有多少作者。
如果搜索结果中的“17c.c++”实际是某个网站名称、文章名称、代码仓库或内部项目代号,那么仅凭这几个词无法确认它的具体作者。此时应查看页面中的上下文、项目说明、版本记录或作者信息,不能把 C++17 的标准化历史直接套用到该项目上。
对开发者而言,这种理解有什么实际意义
理解 C++17“并非一人之笔”,有助于正确看待标准、编译器和代码示例之间的关系。标准描述的是语言和库应当具备的规则,不等于某个编译器的源代码;编译器与标准库则负责把这些规则具体实现出来。即使某项功能已经属于 C++17,具体编译器版本也可能存在支持程度差异。
编写 C++17 项目时,应明确设置对应的语言标准选项,并检查编译器和标准库是否支持所使用的功能。团队还需要关注旧代码兼容、不同平台行为、第三方库要求和构建环境,而不能只根据某个标题判断“能否直接使用”。
因此,“17c.c++:并非一人之笔”更准确的解释是:C++17 有清晰的历史设计脉络,也有具体贡献者,但它最终是一份经过提案、讨论、实现、审查和正式采纳的集体成果。把个人贡献与社区协作同时看见,才是理解 C++17 来源的完整方式。
ymrbstwmqkgjngsufgvwkcmu6xlgls- 责任编辑: 李四端?
-
美国酿酒商星座品牌下调业绩展望,盘前股价重挫
2026-09-09 02:42:18 OLTP -
财政部今日发行两期电子储蓄国债
2026-08-28 05:49:18 -
我家小猫咪会翻跟头哦
2026-08-30 23:45:18 转移支付 -
医保局力推 158 个基层病种「同病同治同价」,患者就医层级越低,治疗成本越低,这能倒逼患者下基层吗?
2026-08-27 09:09:18 智慧城市 -
美国防长:美军封锁伊朗港口行动必要时将继续
2026-09-01 10:28:18 科学碳目标 -
-
深圳证监局发布风险提示:警惕AI量化选股等三类非法荐股套路
2026-09-04 18:48:18 龙虎榜 -
13部门联手严打炒币 稳定币纳入虚拟币监管范畴
2026-09-01 18:21:18 开庭审理 -
双预警齐发 台风“博罗依”将带来大暴雨、特大暴雨
2026-09-01 12:17:18 全面巡视 -
景顺长城基金康乐:宁取细水长流 践行长期主义
2026-08-28 21:01:18 -
英国GHO与新加坡Bridge Capital宣布合并成立新医疗投资公司
2026-09-01 22:58:18 -
8月底去西藏游玩,求搭子
2026-09-03 04:31:18 碳信息披露
相关推荐 -
台风白海豚爆发式增强 或转向浙江 评论 06
美股收盘:谷歌涨超4%总市值超过苹果 评论 75
协会倡议抵制恶性竞争 “反内卷”之风吹到锂行业 评论 22
沪指缩量微跌·科创50逆势飘红 评论 38
163期易顶天快乐8预测奖号:四区分析 评论 41
1亚历山大·王欲重振Meta人工智能优势评论 37?赞 52948
3【RC朱栈】多用粉腮红膏 原价?78 券后?64评论 57?赞 383343
4今天大光这样的走法,对于科技人真的是巨大打击评论 98?赞 70201060
5北京链家“诚意卖”模式试点成交两单评论 50?赞 97381
6田曦薇工作室回应刘海争议评论 22?赞 77585
今年主汛期我国有南北两条多雨带 旱涝并重?最新闻 Hot?快讯- 黄金还在跌!多家银行紧急调整!
- 随着科创板成长层揭开面纱 资本市场梯队建设进一步完善
- 福建莆田暴雨:洪水淹到屋内3米高
- 对话上交大郭亮:从柔性电极先驱到超声脑机先锋
- 中国东航连续获得Wind ESG BBB评级,综合得分6.38
- 飞鹤副总裁孙建国:未来将构建共生、共荣生态体系,实现企业与国家、社会、环境共同成长
- 《洛克王国:世界》远哥来了,福利稳了!
- 今年银行板块为何显著跑输大盘?
观察员











上海市互联网违法与不良信息举报中心
请自觉遵守互联网相关的政策法规,共同营造“阳光、理性、平和、友善”的跟评互动环境。