2012-03-06 13 views

Odpowiedz

20

Myślę, że to pomoże ci zrozumieć różnicę między nil i Nil.

Proszę znaleźć poniższego linku:

skierować odpowiedź Damien_The_Unbeliever który stwierdza:

Googling "Nil vs Nil" uznał ten wpis http://numbergrinder.com/node/49, który stanowi:

Wszystkie trzy tych wartości reprezentuje wartości zerowe lub zero. Różnica polega na tym, że gdy NULL reprezentuje zero dla dowolnego wskaźnika, zero jest specyficzne dla obiektów (np. Id), a zero jest specyficzne dla wskaźników klas. Należy uważać za najlepszą praktykę, aby w odpowiednim momencie użyć obiektu o wartości zerowej do celów dokumentacyjnych, nawet jeśli nie ma niczego, co mogłoby powstrzymać kogoś przed miksowaniem i dopasowaniem jako .

link do tej odpowiedzi można zobaczyć tutaj:

What does 'Nil' represent in Obj-C?

EDIT-2:

Is there a difference between YES/NO,TRUE/FALSE and true/false in objective-c?

+0

Dzięki za zero kontra zero. – Devang

+0

Proszę sprawdzić sekcję EDIT-2 odpowiedzi. Wyjaśniło TRUE vs true vs YES. –

+0

Parth Bhatt - Jaka jest różnica między wskaźnikiem id a wskaźnikiem klasy? Mówi się, że zero jest specyficzne dla obiektu, a zero oznacza poiter klasy. Proszę opracować – shah1988

6

nil jest dosłowna wartość null dla Objective- Obiekty C, odpowiadające abstrakcyjnemu identyfikatorowi typu lub dowolnemu Celowi-C typ zadeklarowany przez @ interfejs. Na przykład:

NSString *someString = nil; 
NSURL *someURL = nil; 
id someObject = nil; 

if (anotherObject == nil) // do something 

Nil jest dosłowną wartością pustą dla klas Objective-C, odpowiadającą klasie Class. Ponieważ większość kodu nie potrzebuje zmiennych do klas referencyjnych, jego użycie nie jest powszechne. Jednym z przykładów jest:

Class someClass = Nil; 
Class anotherClass = [NSString class]; 
Powiązane problemy