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



if(x>y)和if(x-y>0)有没有区别(x,y都是int)? 第1页

  

user avatar   Ivony 网友的相关建议: 
      

面向应然编程而不要面向实然编程。

=============================================================


呃,,,,评论一群人表示不懂什么是应然实然……

简单说就是你要比较大小应该找这个语言规范里面提供的比较大小的方法,不论是Compare、><或者&gt; &lt;又或者 -gt -lt。他们被规定为比较大小,他们应该完成比较大小的操作(应然)。

而不是研究各种实际上可以实现比较大小的旁门左道(实然)。


何况,很多时候编译器只会面向应然开发(满足规范要求满足的行为),而你所研究的实际可行的方案在某些行为下完全可能发生变化。


当然展开来说还能写几屏幕,但无论从哪一方面出发,既然你选择了一种编程语言,面向应然而不是实然开发是非常重要的。如果面向应然写出来的代码性能或者各方面不如面向实然写出的代码,那只能说明你要换一个编译器,你可以去修改编译器的行为,增加参数或者额外的语法来得到更好的编译结果。这叫做代码的归代码,编译器的归编译器。


世界上最糟糕的代码是那些面向实然编程的程序员写出的各种与自己的意图完全没有关系但某些情况下恰好完成了工作的代码。


I don't know why, but it works. actually.




  

相关话题

  就节省编译时间来说,Precompiled Header和Pimpl范式哪个更好? 
  项目代码的公共部分该由谁去维护? 
  计算机随机生成一个数是不是真的是随机的? 
  程序员大牛与菜鸡分别写音乐播放器,播放同一首歌,音质会有差别吗? 
  小白问一下,比较厉害的编程代码,到底厉害在什么地方?是用最少的语言表达出意思,然后不会出现矛盾? 
  数学建模竞赛要不要和喜欢的女生组队? 
  程序员经常加班到很晚,只有大牛朝九晚五吗? 
  人工智能趋势下,孩子学习编程有哪些意义,对未来发展有好处吗? 
  学计算机的男生发这个给我看是什么意思? 
  未接触过编程的妹子希望通过做小项目来学习编程,有哪些类型的项目比较适合? 

前一个讨论
有没有可能现在设计一个程序语言,它能够充分吸收现存语言的优点,同时排除那些缺点?
下一个讨论
人权和主权分别如何准确定义,两者是否有可比性?为什么?





© 2024-12-25 - tinynew.org. All Rights Reserved.
© 2024-12-25 - tinynew.org. 保留所有权利