当前位置:刘伯温火凤凰公式网 > 三目运算符 >

为什么说三目条件运算符?:操作符能使编译器产生比if-then-else

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  CPU在执行指令的过程中会充分地利用流水线技术来增加程序的并行化,但是如果CPU遇到了跳转指令,例如if-else语句,那么就有可能会清空流水线,导致执行效率降低。所以说没有跳转的指令(三目运算)能比有跳转的指令(if-else)更加优化。

  你如果想更多地了解这方面的知识,建议看看《编程卓越之道》(卷一、卷二)和《深入理解计算机》这2本书,我一直觉得这2本书是高级程序员必修课程。

  所谓优化问题1.内存优化,就是所写代码的长度要尽可能的短小但又不是功能,占用内存尽可能的少; 2.计算机cpu执行编译好的代码所用的时间尽可能的少,因为计算机只有一个cpu,同一时间只能执行一个程序,这就要求我们写代码尽可能少的占用cpu的时间 根据以上的介绍我们再来谈三目运算符的?:与if -then-else优化的问题,三目运算符执行的起来使用最多是三个机械周期,而if -then-else至少是三个机械周期,这就是说它至少在占用cpu上是得到了优化,其次我们再来看看代码,很明显if -then-else的代码要比?:的代码写得要长一些,综合以上三目运算符?:是要比if -then-else更为的优化。在这里多说一点,三目运算符?:没有if -then-else使用的灵活,这也是他们的机构所决定的 越集中的东西越不灵活,无所谓谁更好,只有使用谁更适合

  这种东西是伪命题,只要三目能做到的if-then-else理论上也应该可以。这大概是基于某种特定的编译器特定的实现方法的说法

http://idagoldadv.com/sanmuyunsuanfu/230.html
点击次数:??更新时间2019-07-09??【打印此页】??【关闭
  • Copyright © 2002-2017 DEDECMS. 织梦科技 版权所有  
  • 点击这里给我发消息
在线交流 
客服咨询
【我们的专业】
【效果的保证】
【百度百科】
【因为有我】
【所以精彩】