单问号---用于给变量设初值的时候,给变量(int类型)赋值为null,而不是0!
双问号---用于判断并赋值,先判断当前变量是否为null,如果是就可以赋一个新值,否则跳过!
示例:
class Program
{
static void Main(string[] args)
{
test t = new test();
t.S = "aaaa";
t.Num = null;
t.Method();
Console.ReadLine();
}
}
class test
{
private string _s = null;
private int? num = null;
public string S
{
set { _s = value ?? "liguojun"; }
}
public int? Num
{
set { num = value; }
}
public void Method()
{
Console.WriteLine(_s);
Console.WriteLine(num);
Console.WriteLine("Finish!");
}
}