Esperaba que [super class]
devolviera la clase de la superclase, sin embargo, encontré, usando este código, que devuelve la clase de esta clase.¿Por qué "[self class] == [super class]"?
Código
NSLogObject([self class]);
NSLogObject([super class]);
NSLogObject([self superclass]);
NSLogBool([self class] == [super class]);
salida
[self class]: MainMenuScene
[super class]: MainMenuScene
[self superclass]: CCScene
[self class] == [super class]:[YES]
Puede alguien explicar por qué esto sucede por favor ?. Espero que devuelva el mismo valor que [self superclass]
.
Macros: ------- #define NSLogBool(i) NSLog(@"%s:[%@]", #i, (i) ? @"YES" : @"NO") #define NSLogObject(o) NSLog(@"%s:[%@]", #o, o)
Y solo en caso de que no dijera "clase" suficiente: "¡Clase class class class class!" –
No debe usar prefijos de manzana en sus propias clases o macros (o cualquier otro identificador) – JustSid
Debería si deseo que aparezcan cuando escribo NSLog ...: P –