Cap*_*sey 0 c# ternary-operator null-coalescing-operator
我环顾四周,没找到一个同等的问题.
这是不好的编码练习吗?我可以很容易地阅读它,但对于阅读代码的人来说它是否太神秘了?
bool? testBool = null;
string result;
result = (testBool ?? false ? "Yes" : "No");
Run Code Online (Sandbox Code Playgroud)
编辑:我向大家道歉,感谢一些可怕的代码!这是一个有效的例子.
我对回复的速度感到有些不知所措.我打算删除这个并且做得对,但已经有4个回复了!
Jon*_*upp 10
我会添加parens以澄清发生了什么 - 即.
bool? testbool = null;
string result;
result = (testbool ?? false) ? "Yes" : "No";
Run Code Online (Sandbox Code Playgroud)
有了它,我会很好.没有它,我必须研究一下才能弄清楚发生了什么(如果它甚至编译 - 我不知道我的头顶操作的顺序是什么?:vs. ??)