if (dtv.TnMove.Parent != null)
                         tnc = dtv.TnMove.Parent.Nodes;
                     else
                         tnc = dtv.Nodes;
                     if (dtv.TnMove.Parent != null) tnc = dtv.TnMove.Parent.Nodes;简写if语句有没有性能和效率上的损失?

解决方案 »

  1.   

     tnc = dtv.TnMove.Parent == null?dtv.Nodes:dtv.TnMove.Parent.Nodes;
      

  2.   

    啥是简写if?
    省略了括弧?再加N个括弧也没事,何况省略?
    没搞明白楼主的意思
      

  3.   

    三元操作
     tnc = dtv.TnMove.Parent!=null?dtv.TnMove.Parent.Nodes: dtv.Nodes;
      

  4.   

    没有吧,编译后都是一样的CIL
      

  5.   

    如果说有没有括弧在性能上有差异的话,那会不会2行代码写成1行对性能也又影响?。。
    会不会注释越多性能越低?。。个人认为代码中无关痛痒的部分顶多就影响编译的速度吧。。最终生成的exe和有没有括弧没有关系,只要语法上逻辑上没有变化。。一行语句也加括弧只是为了增加可阅读性。。当然也不是括弧越多阅读性就越好。。拙见。。
      

  6.   

    三元操作符效率比 if...else... 要高。。就像 i++ 效率比 i=i+1 高。。