Pergunta

A descrição padrão para uma instância de classe retorna "ClassName: 0x105120". Como eu poderia modificar o método abaixo para apenas retornar o "ClassName"?

// The code below just returns the address ...
- (NSString *)description {

 NSString *result;

 result = [NSString stringWithFormat:@"%p", self];
    return result;
}

EDIT: nesse caso, isso seria correto? Embora eu entendo que se eu quiser realmente obter o className como um NSString eu deveria usar NSStringFromClass ([auto class])

- (id)init {
 NSLog(@"_init: %@", [self class]);
 [super init];
 return self;
}

Agradecemos antecipadamente -Gary -

Foi útil?

Solução

iPhoneOS: NSStringFromClass([self class])
MacOS: [self className]

... dá-lhe um NSString com o nome da classe

Editar:

Para ambos os iPhoneOS e MacOS o caminho a percorrer é:

NSStringFromClass([self class])

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top