У меня есть следующее, если условие param.days
- это строка.Почему это не разрешено в C#?
if (param.days != null)
Это прекрасно работает, но если я скажу
If (param.days)
то не правильно оценить во время выполнения. Оба оператора не совпадают с C#.
Он говорит, что значение равно null, но затем C# пытается передать его в bool, который не является нулевым. Почему дизайнеры C# решили сделать это таким образом? Такое утверждение действительно в C++, но почему это не считается допустимым в C#?
null не является логическим – Sayse
Каков тип 'param.days'? –
@Sayse: Да, я понимаю, но есть ли другая причина для того, чтобы это не оценивалось правильно. Или это из-за того, что bool - это тип, который не является нулевым, и поэтому другого выхода нет. – ckv