Nullable types and the ternary operator: why is `? 10 : null` forbidden? [duplicate]
The compiler first tries to evaluate the right-hand expression: GetBoolValue() ? 10 : null The 10 is an int literal (not int?) and null is, well, null. There’s no implicit conversion between those two hence the error message. If you change the right-hand expression to one of the following then it compiles because there is … Read more