知识大全 也谈值类型与null的判等比较

Posted

篇首语:苦心人天不负,卧薪尝胆,三千越甲可吞吴。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 也谈值类型与null的判等比较相关的知识,希望对你有一定的参考价值。

  首先我们回顾一下代码(这里根据需要做了简化)

   using System;

  

   namespace StructOperatorDemo

  

        class Program

       

            struct MyStruct

           

                public int Value;

  

                public MyStruct(int fValue)

               

                    this Value = fValue;

               

  

                public static bool operator !=(MyStruct s MyStruct s )

               

                    return s Value != s Value;

               

                public static bool operator ==(MyStruct s MyStruct s )

               

                    return s Value == s Value;

               

           

  

            static void Main(string[] args)

           

                MyStruct myStruct = new MyStruct();

  

                if (myStruct == null)

               

                    Console WriteLine( OMG that is impossible! );

               

           

       

  

  之前的代码用 Net 以及之后的编译器可以编译通过 但是 之前的编译器去编译是无法通过的 它会明确告示你struct不能跟null比较 这是什么原因呢?

  我们再看看这段代码

   int x = ;

  

   if (x == )

  

        Console WriteLine( Emmm I think it is not possible );

  

  就这段代码而言 虽然int 本身并不包含对double类型判等比较的重载 但无论是新的还是老的 Net编译器都可以编译通过(当然还有加上相关必要的代码) 因为编译器在编译时会将x和 转换成double 来进行比较 对了 编译器自己会做隐式转换

  所以第一段代码到了 Net 就可以编译通过 因为二者都可以被转换成MyStruct?进行比较 而在 Net 之前 编译器还不知道什么是Nullable Type呢!

  当然 编译器还做了别的优化 比如例子中的情况根本不可能返回true 那么编译器直接忽略随后的相关代码

cha138/Article/program/net/201311/13887

相关参考

也谈饭后怎么走

老话常说:“饭后百步走,活到九十九。”随着医学知识的普及,人们开始用显微镜来审视经典的健康训诫。于是产生了“要活九十九,饭后不要走”的说法。“走”与“不走”,一下子变得“生死攸关”。不仅让人进退两难,

估波指标的判研方法

估波指标的判研方法1、估波指标适合在指数的月线图表中分析。2、当估波曲线从零以下向上穿越零线,预示牛市来临,是中期买入信号。3、估波指标不适宜寻找卖出时机,应结合其它指标来进行分析。4、估波指标与价格

累积/派发线的判研方法

累积/派发线的判研方法1、A/D测量资金流向,向上的A/D表明买方占优势,而向下的A/D表明卖方占优势。2、A/D与价格的背离可视为买卖信号,即底背离考虑买入,顶背离考虑卖出。3、应当注意A/D忽略了

知识大全 也谈ASP.NET站点的安全

也谈ASP.NET站点的安全  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  如果做一个项目涉及到

阻速线的判研方法

阻速线的判研方法如果上升趋势正处于调整之中,那么阻速线向下折返的余地通常是到上方的速度线(2/3阻速线)为止;如果它又被超越了,那么价格还将跌到下方的速度线(1/3阻速线);如果下方的速度线也跌破了,

佳庆离散指标的判研方法

佳庆离散指标的判研方法离散比率能直观地反映异常波动的情况,这可能是趋势形成或反转的先兆。下面以汇市以例进行说明:1、当价格上涨形态被破坏,并进入区间盘整状态,此时CV曲线处于顶部(高水平位置)。2、区

佳庆资金流量指标的判研方法

佳庆资金流量指标的判研方法1、一般而言,CMF大于零,市场处于牛市,CMF小于零,市场处于熊市。2、CMF大于零(或小于零)的时间长短也值得注意。停留时间越长,趋势越可靠。3、CMF可以结合趋势线及支

知识大全 也谈ASP.NET数据库操设计方法

也谈ASP.NET数据库操设计方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在做开发的时候

也谈静功修炼的效益

静坐修养的益生效应巨大。朱先生以自己十多年的练功实践,证明了中华气功是个瑰宝,这也是许多人的实践所证明了的不可抹煞的事实。但是以往许多人总把气功原理弄到神秘化的地步,使一些人误入邪教歧途,以致今失许多

知识大全 也谈.NET 3.5 SP1中的JIT增强

也谈.NET3.5SP1中的JIT增强  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!在NET平台里