2010-05-27 4 views
18

Desidero sovrascrivere la funzione di stampa predefinita in NSLog per gli oggetti personalizzati;Override oggettivo C% @ per oggetti personalizzati

Ad esempio:

MyObject *myObject = [[MyObject alloc] init]; 
NSLog(@"This is my object: %@", myObjcet); 

stamperà:

This is my object: <MyObject: 0x4324234> 

C'è una funzione sovrascrivo in MyObject per stampare una descrizione più bella?

Cheers! Nick.

+0

Ho visto questa nota nei dettagli di download di XCode 5.1 "Aggiunge il supporto Quick Look nel debugger per i tipi di oggetto personalizzati". Le dita incrociate che è tutto ciò che spero. Download ora. – prototypical

risposta

53

Basta implementare il metodo description.

- (NSString *)description { 
    return @"MyCustomDescription"; 
} 

Questo è il metodo utilizzato per stampare un'istanza.

+0

Ha lavorato un sogno. Grazie! –

7

Ignora -description nella classe personalizzata.