Почему это вызывает исключение нулевой ссылки?

Это вызовет исключение нулевой ссылки, когда InnerException имеет значение null.

String s = " inner exception: " + e.InnerException == null ? "None" : e.InnerException.Message;

но этого не произойдет:

String s = " inner exception: " + (e.InnerException == null ? "None" : e.InnerException.Message);

Оба вышеупомянутых сборщика работают нормально. Я могу ' t выяснить, что первый пытается сделать, чтобы заставить его оценить e.InnerException.Message . Почему они не эквивалентны?

9
задан Erix 29 November 2011 в 19:30
поделиться