类型后面加?的问题

   先看示例:

static void Main(string[] args)
{
int? aa=null;
Console.WriteLine(aa ?? -1);
Console.Read();
}

这里定义了一个可空的整型aa,并给它赋值为null,然后输出。

     一个问号表示这个类型可以为null,2个问号表示这个类型如果为空的话,给此类型赋予问号后面的值.

static void Main(string[] args)
{
int? aa=null;
int? bb = 1;
Console.WriteLine(aa ?? -1);
Console.WriteLine(bb ?? -1);
Console.Read();
}

控制台输出-1,1。

     这个?实际上是泛型Nullable<T>   msdn解释有具体的应用。

原文地址:https://www.cnblogs.com/glorysword/p/2297852.html