Duplicar posible:
In Objective-C why should I check if self = [super init] is not nil?¿Por qué [super init] alguna vez devolvería nil, cuando "super" es NSObject?
En Objective-C libro que estoy leyendo, se dice que cuando [init]
mensaje se envía a NSObject
, en ocasiones puede volver nil
y debemos verifique el valor de retorno, antes de enviar más mensajes a lo que puede terminar siendo nil
.
self = [super init];
if (self) {
do stuff
}
te pido que, sin embargo, lo que debe suceder para un NSObject
a no ser capaz de init
sí?
Editar: La pregunta trata específicamente de una instancia donde YourClass: NSObject.
Mi pregunta es específica de un caso en el que la superclase de su clase es NSObject. – JAM
La otra pregunta cubre ese caso, y tiene varias respuestas realmente excelentes. –