百科问答小站 logo
百科问答小站 font logo



C++ 几十年来为什么没给 break 语句加上参数? 第1页

  

user avatar   Ivony 网友的相关建议: 
      

简而言之就是这种语法会极大地破坏代码平移不变性……


能想出这种语法的我也是大写的服……


user avatar   wang-shan-81-17-10 网友的相关建议: 
      

因为第一,我懒得数一共几层循环,第二,很容易数错,第三,万一修改了程序,循环层数变了,很容易忘记改break,第四,如果用goto,以上缺点都不存在。


补充:我回答时没注意到题主想要的还不仅仅是语法糖,而且想要break <变量>,这就是引入一种全新的语义了。那比C语言的goto危险一百倍,比FORTRAN里的GOTO <标号变量>还要危险十倍。毕竟FORTRAN的标号变量只能用标号常数赋值进去,而不能是计算的结果。

能想出这种怪物的题主没有权力说goto不好。


user avatar   pansz 网友的相关建议: 
      

曾经有人问为什么C++不去掉goto。相关人士如此回答:goto是用来跳出多层循环的。


user avatar   d41d8c 网友的相关建议: 
      

从道理来说,早减晚增本身是没啥毛病的,毕竟只是个选项,丰俭由人。

大家怕的是某些人通过这些选项,再加点私货。而且这个说法和推迟退休一起出来,由不得大家多想。

按照目前的舆论情况,如果你敢允许早退减拿,估计只要不在体制内的人就统统早退了,反正也没啥规定领了社保就不能接着打工,对吧?甚至还可以把原来交给社保的那块放自己口袋。

所以,让你早退减拿是不可能的,忽悠大家晚退多拿的可能性比较大。




  

相关话题

  为什么招聘单片机工程师的时候要求精通C/C++? 
  有哪些c++的书推荐? 
  为什么招聘单片机工程师的时候要求精通C/C++? 
  怎样理解C++中“如果属性有在堆区开辟的,一定要自己提供拷贝构造函数,防止浅拷贝带来的问题”? 
  为什么看到这么多人不推荐C++? 
  qt5.5中给全零地址发送udp数据包为何会失败? 
  C++ make_tuple返回值类型,会有效率问题吗? 
  C++中 union 储存的 char 成员能否通过 int 成员读取? 
  为了软件更符合开源风格,c/cpp 代码缩进应该使用4空格还是2空格? 
  malloc申请的内存能是虚拟内存吗,也就是申请的一块新的空间,刚申请就缺页吗? 

前一个讨论
为什么国家定义程序员为新生代农民工,而不是高端或科技人才,这说明程序员门槛低吗?
下一个讨论
牙齿为什么进化成可以被矫正?





© 2025-06-26 - tinynew.org. All Rights Reserved.
© 2025-06-26 - tinynew.org. 保留所有权利