0 голосов
спросил от в категории Другие
Существует подробное сообщение в блоге, которое может ответить на это для вас: #"is null" versus "== null" in C# # [#^ #]

Ваш ответ

Отображаемое имя (по желанию):
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.
0 голосов
ответил от
Я googled" == null vs is null", и это был первый результат

#c# - What is the difference between "x is null" and "x == null"? - Stack Overflow # [#^ #]

Есть много других результатов, если вы ищете себя.

Основная проблема заключается в том, что вы можете перегружать «==», чтобы изменить свое поведение, поэтому, когда вы используете «== null», у вас нет гарантии того, какой код действительно вызывается и как определяется «== null». Например, если у меня есть класс Person, я могу перегрузить == для Person, чтобы сказать, что если у человека нет идентификатора, тогда он равен нулю. Когда ваш код использует «if (p == null)», результат может быть «истинным», несмотря на то, что переменная «p» фактически не является пустой ссылкой. Однако, когда вы использование «есть», которое невозможно перегрузить, поэтому проверка «равна нулю» дает более точное представление о том, является ли эта переменная нулевой ссылкой или нет.
0 голосов
ответил от
0 голосов
ответил назад от

Категории

Добро пожаловать на сайт DraftingCode Q&A (ИТ ответы), где вы можете задавать вопросы и получать ответы от других членов сообщества.

Связанных вопросов не найдено

...