C#中单问号,双问号的用法(转)

原文:http://hi.baidu.com/guodong828/blog/item/c78fc23f847314cb7d1e7193.html

单问号---用于给变量设初值的时候,给变量(int类型)赋值为null,而不是0;

双问号---用于判断并赋值,先判断当前变量是否为null,如果是就可以赋一个新值,否则跳过;
形式为“a??b”的空合并表达式要求a为可空类型(形如:int?)或引用类型。如果a为非空则表达式“a??b”返回的结果为a;否则返回b。

空合并运算符为右结合运算符,即操作时从右向左进行组合的。如,“a??b??c”的形式按“a??(bb??cc)”计算。


public int? para;
//public int para;如果用此行替换上一行的话,下面会报错
public int par()
{
    
return this.para ?? 0;
}
posted @ 2011-02-25 08:02  peter cheng  阅读(440)  评论(0编辑  收藏  举报