我刚刚遇到一个奇怪的错误:
private bool GetBoolValue()
{
//Do some logic and return true or false
}
然后,在另一种方法中,类似这样:
int? x = GetBoolValue() ? 10 : null;
很简单,如果该方法返回true,则将10赋值给null int
x.否则,将null赋值给nullable int.但是,编译器会抱怨:
错误%1无法确定条件表达式的类型,因为
int
和<null>
之间没有隐式转换.
我疯了吗?