Цель-C: если (объект) Vs.если (объект! = ноль) - PullRequest
9 голосов
/ 16 июня 2011

Предполагая, что object является разновидностью NSObject, следующие, если операторы эквивалентны, но какой стиль я должен использовать?

if (object) {
    // ...
}

или

if (object != nil) {
    // ...
}

Ответы [ 2 ]

13 голосов
/ 16 июня 2011

Как вы говорите, они эквивалентны.Таким образом ...

какой стиль я должен использовать?

Какой стиль вы хотите.

3 голосов
/ 26 октября 2012

Они эквивалентны в том смысле, что они делают то же самое. Но я бы сказал, что второе утверждение делает код более читабельным. Когда человек читает строку, он понимает, что это означает «если объект не указывает ни на что».

Помните изречение Кнута: язык программирования - это способ доставки инструкций к машине в удобочитаемой форме ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...