Может кто-нибудь объяснить мне поведение следующей строки в VBЧто «Возвращение Не (s нет ничего,)» вернуться
Return Not (s Is Nothing)
Я ищу, чтобы перевести это в C# и я не уверен, о тех, кто отрицании и не понимают условий.
Может кто-нибудь объяснить мне поведение следующей строки в VBЧто «Возвращение Не (s нет ничего,)» вернуться
Return Not (s Is Nothing)
Я ищу, чтобы перевести это в C# и я не уверен, о тех, кто отрицании и не понимают условий.
return s != null;
В C# это будет
return s != null
Более прямой transaltion является
return !(s == null)
, но это было бы странно, глядя в C# поэтому оригинальный перевод предпочитаемое.
Я также обнаружил, что он возвращает логическое сбивание с толку. Я бы ожидал, что это будет означать «return s, если это не null», а не «return is s null или not» – Jla
DrDro, я могу видеть, как вы можете это увидеть, но что бы он вернул, если s равно null ? Он должен что-то вернуть. Если бы он просто вернул null, если s был пустым, тогда это просто 'return s' –
Просто FYI, в «идиоматическое» VB, это было бы скорее записать в виде:
Return s IsNot Nothing
Звучит более естественно, так или иначе :) – OregonGhost
Null ничего в VB –
@Julien: Duh. Конечно. –
спасибо за быстрый ответ. Теперь я понимаю это отрицание. – Jla