博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Nullable 类型的使用

Posted on 2010-06-01 14:02  雷雷  阅读(128)  评论(0编辑  收藏  举报

     我们都知道在C# 当中,有两种数据类型:值类型和引用类型。

          在我们平常编程中,经常写例如下面的代码:
            int count=0;
            string nullStr=null;
          值类型的数据不能为null,而引用类型的数据可以为null。
           //即 int number=null;           //这条语句是不能通过编译的
            因为int是值类型。而string 是引用类型。
           可是当我们想知道一个值类型在程序中,是否已经赋值?我们却不能用 这条语句判断:
                if(number!=null)
           但是,C#中还有种机制,解决这类问题:通过在值类型后面加上问号。
                int? number=null;
          注意: 这种机制只支持值类型,对于引用类型无意义。
          有个类叫Nullable类,支持可为其分配 空引用(在 Visual Basic 中为 Nothing) 的值类型。引用类型,无法继承此类。