[问题] “??”符号语法

楼主: d25702 (DOTA)   2014-08-05 15:22:35
这是我从ASP.NET MVC撷取出来的片段程式码如下
public ApplicationUserManager UserManager {
get
{
return _userManager ??
HttpContext.GetOwinContext().GetUserManager<ApplicationUserManager>();
}
private set
{
_userManager = value;
}
}
小弟C#语法不熟,可请问前辈,
程式中的“??”符号是什么意思?
大概怎么用呢?
作者: vidan41 ( )   2014-08-05 15:28:00
是不是null 是的话传回右边的
楼主: d25702 (DOTA)   2014-08-05 17:31:00
感谢~
作者: mepowerlmay (用心,找对人)   2014-08-05 19:48:00
下一篇 你一定会想问 c#‘?’ 是什么意思
作者: iterator (rotareti)   2014-08-05 20:06:00
之后还可以问 "?."是什么
作者: Abbee (阿比)   2014-08-05 20:29:00
请问"?."是什么?
作者: qwer820404 (GB2)   2014-08-05 20:41:00
int? test 指 test可以nullable
作者: iterator (rotareti)   2014-08-05 20:50:00
C# 6.0, a?.b 表示"如果a是null,回传null,否则回传a.b"各位,更多的syntactic sugar,而且还很有用!
作者: Abbee (阿比)   2014-08-05 21:06:00
a.b是指整数后面加小数吗?
作者: iterator (rotareti)   2014-08-05 21:17:00
作者: Abbee (阿比)   2014-08-05 22:03:00
哇~这超赞的~不知道vs2012有没有
作者: mepowerlmay (用心,找对人)   2014-08-05 22:47:00
这一篇钓了不少高手....真e外
作者: stu87616 (文组工程师)   2014-08-06 01:28:00
这种冷门运算子一点也不想用...宁愿多花3行写if else
楼主: d25702 (DOTA)   2014-08-06 03:30:00
“?”我知道,但“a?.b”我就不知道了感谢iterator大,我也提供一个有用的参考资料C# Operators http://ppt.cc/wnZ7我发现“?:”也很实用string decide ="";decide = (1 + 1 == 2) ? "right" : "error";
作者: FantasyRyu (眩惑之龙)   2014-08-06 10:19:00
这不是冷门问题……不然你怎么不去用VB……更长更好读
作者: a926 (Aaron)   2014-08-06 15:48:00
?:其实蛮常用的说 function的 function a(int x=0)这种现在也蛮常用的 XD
作者: GoalBased (Artificail Intelligence)   2014-08-06 16:24:00
无聊的时候会把 if else 改成 ? :不过我知道,到时候祎定会有人来问这是什么
作者: qwer820404 (GB2)   2014-08-06 21:19:00
唯一的三元运算式
作者: KanoLoa (卡)   2014-08-07 02:50:00
无聊想弄新人就会写进去
作者: iterator (rotareti)   2014-08-07 04:04:00
多善用程式语言语法,这些东西并不只是无聊时拿来用用而已
作者: KanoLoa (卡)   2014-08-07 11:46:00
哀,想用语法也要看周遭环境能不能配合
作者: GoalBased (Artificail Intelligence)   2014-08-07 15:12:00
新人来问就算囉~等一下老板来问叫你改回去怎么办呢?
作者: mepowerlmay (用心,找对人)   2014-08-07 18:41:00
个人觉得 c# 遇到 nullable 物件时很好用DateTime? a = b.HasValue ? b : null;
作者: f1234518456 (...........)   2014-08-07 20:17:00
想离职的时候都会这样写
作者: ssccg (23)   2014-08-07 20:38:00
??就算了,还问?:的是来乱的吗...主流语言几乎都有?:VB也有IIF/IF,写别的语言就很有感觉C#在这点方便很多
作者: momokokuo   2014-08-10 15:03:00
?.在.net哪一个版本才有?
作者: uranusjr (←這人是超級笨蛋)   2014-08-10 15:09:00
上面推文就有写了
作者: mepowerlmay (用心,找对人)   2014-08-10 20:41:00
还在开发中的6.0???
作者: followmeyo (简简单单)   2014-08-15 21:29:00
http://goo.gl/qXKrq5 有简单解说

Links booklink

Contact Us: admin [ a t ] ucptt.com