ObjectiveC: if (obj) {…} AND if (obj! = Nil) {…}, co jest lepsze?

Widziałem dużo kodu ObjC, który:

obj = [[SomeObject alloc] init];
if (obj) {
/// ...
}

ale jak zrozumiałem, wartość wewnątrz () jest wartością logiczną, a 0 oznacza FAŁSZ 1 oznacza PRAWDA (jest inny przypadek w innym języku, w którym 0 jest prawdziwe, a 1 fałszywe), a jeśli wskaźnik nie wskazuje niczego, jest ustawiona na NULL (zero), która jest # zdefiniowana jako 0, więc zastanawiam się, czy jest lepiej, jeśli to zrobię:

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

ponieważ sprawdza, czy obiekt jest zerowy, czy nie, bez względu na wartośćnil jest, więc nie polega na tymnil (lubNULL) zostało zdefiniowane jako 0?

questionAnswers(2)

yourAnswerToTheQuestion