为什么中国的程序员不敢对C++标准委员会说不?

双11提前购!买周边/年卡,一键领4重福利! 送200元神券包+10%红包返利+最高10年VIP!还能抽iPhone18Pro!仅限1次,速抢>> 阅读详情

为什么中国的程序员不敢对C++标准委员会说不?

我在CSDN上发了一个贴子,指出C++标准委员会制定标准强制for循环一致性的做法是不合理的。
其实关于强制for循环一致性的讨论一直是比较激烈的,以前我在国外一些邮件列表中常常见到这样的话题,两方面的意见基本持平,不分高下。

我在做我自己的太极语言时发现了一个规则,根据这个规则平滑推理过来可以判断出不应强制for循环一致性,我就在我的blog和贴子里说了。可是没想到竟然……

我觉到我们中国程序员界有一种不正确的思维定势,过于迷信C++标准委员会(不只C++),过于迷信这样的所谓权威,不敢对它说一个不字,不敢怀疑它,不敢讨论它,甚至对讨论它的嘲笑讥讽。

可是大家考虑过没有,这些所谓的标准是怎么来的?是讨论来的,是争辩来的,而且标准的本身也不是稳定不变的。不能因为它是标准就不能违反它,更不能因为它是标准就不允许争论它,不能因为它是标准就讽刺怀疑它的人。

我忽然觉到中国程序员界怎么这么在意“符合国际标准”,而国际上的各大公司却是在争着让自己的标准成为国际标准,即使成为不了标准也要守着自己的地盘守好以备东山在起,所以你看很多所谓的“国际标准”就在那里摆着,许多科研单位与公司却不把它放在眼里,所以出来那么多不符合标准的东西,除了统一底层接口以外各自都发展出有各自特色的一套东西。在技术的高端,不讲究什么标准,标准只能暂定,不是绝对的定论。

大家知道微软等不少公司的C/C++编译器一直在拒绝C++标准委员会制定的标准强制for循环一致性,VC一直到2005版才不得不向标准屈服。许多人却说微软这样做是为了商业利益,说微软的编译器符合了标准就可以挣更多的钱。其实我觉的象微软这样的公司,在技术问题上并不会太在意钱,决不会为了钱而改变技术的初衷。微软之所以拒绝这个C++标准一定是因为了技术上的原因——是因为微软的编译器开发小组认为C++标准委员会错了所以才这样做的。(后来lippman来了,给lippman一个面子吧,这才……)。在这点上,微软如果想用迎合C++标准的方式来挣钱,那么决不会推迟到2005。恐怕是C++标准刚刚出来就会做了。

强制for循环一致性或不强制for循环一致性在技术实现上是很简单的——曾经做过类C/C++编译器的都明白,只是国内太少了。下面看看在我的太极语言中实现这两种情况的代码多么简单。在太极语言中,没有for,while,switch,if..else..,这些都是用代码组合机制实现的(太极语言的编译描述控制语言“无极语言”的一部分)

(1).不强制一致性
//定义 for 的概念
mean for(a,b,c,d)
{
 a;
SignForBegin:;
 goto (b) SignForBody;
 goto SignForEnd;
SignForBody:;
 d;
SignForContinue:;
 c;
 goto SignForBegin;
SignForEnd:;
}

//使用for
for(int i;int j;i=0;j=0)(i<100)(i=i+1)
{
 j=j+i;
}

(2)。强制一致性

//定义 for 的概念
mean for(a,b,c,d)
{
{
 a;
SignForBegin:;
 goto (b) SignForBody;
 goto SignForEnd;
SignForBody:;
 d;
SignForContinue:;
 c;
 goto SignForBegin;
SignForEnd:;
}
}

//使用for
for(int i;int j;i=0;j=0)(i<100)(i=i+1)
{
 j=j+i;
}

我仅仅在(1)的{}内部再嵌套一层{}就可以了。别的什么代码都不用做。
(2)的for循环会变成{....},而{}里定义的名字全是封闭的,从而就强制了for循环的一致性。

if,while....也同样。

底层的东西做好了,这些高层的东西想怎么做就怎么做,想符合标准就符合,不想符合就不符合,一切看愿意怎么做。

忽然想起来,微软的代码里肯定是有很多不符合标准的“非强制for循环一致性”的代码,而且是感到这样做是有好处的,所以与C++标准对抗到2005才低头。而且幕后一定是bill gates在挺着。

我发现很多人一考虑到微软时往往容易被什么“微软只是有钱其实没技术”之类的说法限制住思维,其实这些说法我觉的完全是无稽之谈。没技术?lippman也没技术吗?borland过去的那几个小子也没技术吗?原来的dec vms 小组也没技术吗?……没技术只凭商业手段难道就这么好在技术圈子里玩?顶多只能说微软一些技术不是最好的。

我刚刚了解到,哈哈,微软原开发小组里许多人(包括borland过去的)在for循环一致性的问题上和lippman不一样,虽然2005开始支持标准,不过许多人挺有意见的……

我觉的我们中国的程序员界应该增强信心与活力,不要整日屈服在所谓标准与权威之下,——看看在我们中国被瞻仰的香饽饽C++标准在国外遭到了多少质疑?该怀疑的时候就是要怀疑,国外的程序员界就是这么走过来的。同时程序员界也应该对这些怀疑的论调持宽容态度,怀疑外国人的标准与权威不应该被讥讽。

 

C++ 标准委员会 国际C++标准委员会 C++作为一种开源且广泛应用的编程语言 标准的作用 委员会的组织 委员会的结构对 C++ 设计的影响 国际C++标准委员会,正式名称为ISO/IEC JTC1/SC22/WG21,确实是C++语言发展的重要推手。这个组织自1991年成立以来,一直在推动C++标准的制定和演进。在此之前,C++的开发工作主要由美国国家标准学会(ANSI)的C++标准委员会负责。C++作为一种开源且广泛应用的编程语言,没有特定的资金提供来源或所有者,因此其发展在很大程度上依赖于企业开发、开源项目以及社区的努力。对于来自不同组织和公司的开发者来说,WG21和各国的标准委员会成为了他们共同讨论、解决问题和推动C++发展的平台。 阅读详情

相关推荐

C++大牛的博客

1. C++大牛的博客     Bjarne Stroustrup的博客: Bjarne Stroustrup’s Homepage Bjarne Stroustrup,不认识的可以去面壁了,没有他,就没有我们现在的饭碗。Bjarne Stroustrup是丹麦人,目前任教于TAMU。他的Homepage和他的书籍The C++ Programming Language一样

程序猿老樊的博客 6238

现代c++白皮书(C++ 标准委员会)

C++ 标准委员会

记录我目之所及的世界 1万+

C++标准规范

C++最新标准文档,摘自IEEE委员会。 内含C++使用标准,最新更新内容等。

【科普】C++标准与标准委员会,你不得不知的那些事

文章目录ISO标准C 委员会 与 C++ 委员会如何制定标准C++ 的实现参考 ISO标准 这里直接照搬百度百科:https://baike.baidu.com/item/ISO%E6%A0%87%E5%87%86/9818656?fr=aladdin ISO标准是指由『 国际标准化组织 (International Organization for Standardization), ISO 』制订的标准。 国际标准化组织是一个由国家标准化机构组成的世界范围的联合会,现有140个成员国。根据该组织章程,每

weixin_47652005的博客 5954

人工智能机器学习从入门到高级学习资料(含资料下载地址)

机器学习是一个技术含量较高的领域,高效学习需要多种途径相结合.以下是一些推荐的学习资源。首先介绍几个比较有用的社区,包含了丰富的学习资料

2401_86900375的博客 1634

【技术纵览】行为识别前沿模型演进:从CNN到多模态大模型

本文全面解析了行为识别技术从CNN到多模态大模型的演进历程,重点介绍了SlowFast、TimeSformer、VideoMAE和InternVideo等SOTA模型的核心创新与应用实践。通过对比分析各代模型在Kinetics-400等数据集上的表现,揭示了自监督学习和多模态融合如何推动行为识别准确率突破85%,并探讨了工业部署中的技术选型策略与优化方向。

weixin_29169505的博客 149

现代C++基本介绍

在开始学习现代C++之前,我们需要了解现代C++的基本概念。所谓现代C++,就是指 C++11 及之后的 C++,大量引入的新的语言特性和库功能使得C++感觉像一门新的语言。本文将介绍与C++相关的几个网站以及C++标准的发展历程,帮助读者初步揭开现代C++的面纱

YMGogre的博客 737

ZYNQ RFSoC 的DAC如何做到从 0到Fs频段 信号输出

之前一直没太了解 RFSoC 的DAC如何输出在 Fs/2 到 Fs 频率范围内的信号,例如 ZCU216中的 ZU49DR,其RF-DAC最大采样率是 9.85GSPS,如果想输出的信号中心频率在5.8G,它是如何有效输出在第二奈奎斯特区域范围的信号的。

weixin_44630490的博客 1546

C++ 世界的“名人堂”

人物/组织核心贡献代表作/项目C++ 语言创始人,定义核心特性STL(标准模板库)之父STL(容器、算法、迭代器)C++ 最佳实践布道者《Effective C++》系列标准委员会前主席,语言演进《Exceptional C++》系列现代模板元编程与设计移动语义、<chrono>库实现右值引用和标准库特性孵化器标准库权威阐述开源编译器基石GCC (G++)现代编译器领导者。

ZhiqianXia 827

随机子空间集成方法原理与scikit-learn实践

集成学习通过组合多个基学习器的预测结果来提升模型性能,是机器学习中的核心方法之一。随机子空间方法作为集成学习的重要变体,其核心原理是通过对特征空间进行随机子采样来增加模型多样性。这种方法特别适合处理高维数据,能有效缓解维度灾难问题,常与决策树、K近邻等对特征选择敏感的基学习器配合使用。在scikit-learn中,可以通过BaggingClassifier和BaggingRegressor实现随机子空间集成,关键参数包括max_features和n_estimators。实际应用中,该方法在金融风控、医疗诊

weixin_33773084的博客 369

【毕设级教程】从0到1实现基于YOLOv8的xView卫星图像目标检测系统(含UI界面,助力遥感智能毕设)

本文基于YOLOv8模型设计了一个面向xView卫星图像的目标检测系统。首先对xView数据集进行了格式转换处理,将原始多边形标注转换为YOLO格式的边界框标注。随后通过配置YOLOv8模型参数完成训练,实现了对卫星图像中建筑、车辆等多类目标的准确识别。为提高系统交互性,采用PyQt开发了可视化界面,支持图像选择、实时检测和结果展示功能。整个系统兼顾学术价值和实用价值,为遥感领域的自动化目标检测提供了可行方案。

m0_64661770的博客 127

为什么看到这么多人不推荐C++?

从C++11、C++14、C++17到如今的C++20,除了增添了少量的最基本的组件(比如智能指针、哈希表、线程等),其他全是TM在折腾语言特性!一个C++程序员,需要一个基础功能时,百度一下,在CXDN找到一个不知名网友分享的源代码,找有积分的朋友下载后导入到工程,一编译128个error,256个warning···江湖上,使用C++的各大门派,谷歌、腾讯、百度、阿里、华为,无一不是多年积累下了一套自己的开发生态,轻易不会公布,这也导致了没有官方的东西,民间自立门户,标准难以统一。

IT界那些事儿 7656

YOLOv8架构革命:通过EfficientViT融合实现精度-速度的帕累托突破

目标检测领域长期存在精度与速度的权衡难题。视觉Transformer(ViT)的引入解决了长距离依赖问题,但其巨大的计算复杂度制约了实时应用。最新研究表明,将轻量级ViT与YOLO架构融合,可在几乎不损失推理速度的前提下,将mAP提升3-8个百分点。这种架构改进方案已在工业检测、自动驾驶、安防监控等多个领域得到验证,在保持实时性的同时显著提升了复杂场景下的检测可靠性。通过模块化设计,可以灵活适配不同规模的YOLOv8模型,为实际应用提供精度-速度的帕累托最优解。

FJN110的博客 144

为什么看到这么多人不推荐C++?_c++越来越臃肿,就是这么简单

能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

2401_84264429的博客 1103

CloudCompare&PCL 体元累加法(树冠体积计算)

文章目录

dayuhaitang1的博客 1541

【C2000系列DSP的Bootloader详解】如何打包源文件为库文件且加密仅授权使用,一步步教你如何实现

如果想要在 TI 的 CCS 开发环境中为 C2000 系列 MCU 生成 lib 库文件,并对这些库文件进行加密保护,确保只有授权方(持有密钥)才能调用和使用,以此保护源代码的知识产权。

昔时扬尘处 171

C++标准委员会的相爱相杀:一场跨越三十年的“吵架大会“

两派各执一词,互不相让。更戏剧性的是,在讨论过程中,还冒出了"弱引用"这个"搅局者",引发了新一轮争论:"弱引用到底要不要?"这场关于智能指针的"宫斗大戏"持续了多年,最终诞生了std::unique_ptr、std::shared_ptr和std::weak_ptr三兄弟,共同守护C++的内存安全,这场架也算吵出了成果。本以为这群技术大牛聚在一起是为了"华山论剑",共同打造编程语言的巅峰之作,没想到却开启了一场长达三十年的"吵架大会",相爱相杀的剧情比八点档电视剧还精彩!第二回合:智能指针的"宫斗大戏"

2501_91651722的博客 423

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

祝贺龙蜥社区理事单位成员入选C++ 标准委员会,首个国内企业代表加入

近日,龙蜥社区的贡献者之一、来自理事单位阿里云的许传奇加入了 C++ 标准委员会。这是首个国内企业代表进入 C++标准委员会

HaaS技术社区的博客 1280

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

为什么看到这么多人不推荐C++?_c++越来越臃肿

链接:https://www.zhihu.com/question/22853451/answer/2084675682其实现在也越来越发现,C++老是在弄那些语言特性,当然有一些好用的,但是让C++这门语言也越来越臃肿。使得学习成本很高,而且普遍实现某个功能,可以有多个不同的方法,使得代码的统一性不好。除此之外,C++的标准库和STL库功能太匮乏了,大家都调侃C++就是用来刷LeetCode的,现在C++就是缺一个好的包管理器,不管是标准库还是第三方库,这样可以让C++开发变得更高效率。

2401_89828713的博客 668

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

[PHP-CPP]使用C++来扩展PHP的能力

一个使用C++来开发PHP扩展的开源项目 什么是PHP-CPP? 它是一个C++库,用来开发PHP的扩展.它提供了一个文档丰富且易于使用的类库,可以使用这些类库开发PHP的扩展.也就是说我们可以用C++来开发PHP的扩展了. 为什么要使用PHP-CPP? 使用这个C++库,可以非常享受的开发出一个PHP的扩展,使用它编写的代码简单易懂,并且能为你的软件带来很大的提升. 使用PHP-CPP的特性和原因 1.性能更快 使用C++编写的代码相比PHP的代码来说,非常非常快,在官网给出的一个冒

PHP武器库 1497

为什么看到这么多人不推荐C++?_c++越来越臃肿(1),2024年最新2024年Golang工作或更难找

能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

2401_84264429的博客 1068

已35岁的C++语言重新获得程序员青睐:C++20将于年底完工

已经35岁的编程语言C++,依然深受程序员们的青睐。 在TIOBE公布的2019年4月编程语言指数中,C++居第三位,指数同比增长1.62%。 作为C语言的扩展,C++在1985年创建,最新的标准化版本C++17已经获得了大量编译器的支持,包括微软Visual Studio、GNU Compiler Collection (GCC)和Clang等。创一个小群,供大家学习交流聊天如果有对学C++方面...

weixin_33875564的博客 257

C++ 居然超过了 Python?

很难想象,从 1983 年被正式命名开始算起,已经走过整整四十年光阴的C++,居然力挫 C、Python,摘得了 TIOBE 2022 年度编程语言的桂冠。据TIOBE官网显示,在过去一年里,C++ 因为涨幅最大,为 4.62%,从而成为年度编程语言魁首,亚军是增幅 3.82% 的 C 语言,而季军则是 Python(增幅 2.78%)。在开发者们的印象里,Python 由于胶水语言的属性,...

CrisAppleYan的博客 9303

从C++代码中窥探中国程序员的文化认同

一个函数可能被命名为`CalculateEmployeeAnnualBonusByDepartment`,而非更简短的缩写,这种对明确性和上下文的追求,确保了代码在团队中的可读性和可维护性,是对团队协作精神的一种微观体现。例如,在解释一个复杂的算法或指出一个潜在的边界情况时,注释的语气可能更加委婉,注重维护代码审查时的和谐氛围。总而言之,C++代码如同一个微观的文化载体,中国程序员在无意识中将自身成长环境中沉淀的文化价值观——如集体意识、稳健务实、勤学善思、和谐沟通——映射到了代码的构建过程中。

weixin_42383071的博客 418

由C++书单说开来

心血来潮,整理了一下学习C++应该读的书单,当然我并没有都读过, 权当作一个ToDo List吧。书单 本书单暂不包含C语言相关书目,当然了想学好C++,C语言的经典图书也应该读一读。 书名 作者 备注 The C++ Programing Language Bjarne Stroustrup C++之父的TCPL C++ Primer Plus Stephen

果冻虾仁 1260
上一篇: 论C++标准委员会制定的一条不合理的标准
下一篇: 超越图灵机——论人工智能实现的可能性(一)
universee
博客等级 码龄21年 47粉丝 46原创
评论 10
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值