Possibile duplicato:
Prefixing dei nomi delle proprietà con un trattino basso nell’Objective C
Sono uno sviluppatore C / C ++ e sto imparando Objective-C. Recentemente ho iniziato su un tutorial che ho trovato in rete. Il codice è il seguente:
@interface MapDemoAnnotation : NSObject { CLLocationCoordinate2D _coordinate; } - (id)initWithCoordinate:(CLLocationCoordinate2D)coordinate; @end @implementation MapDemoAnnotation @synthesize coordinate=_coordinate; - (id)initWithCoordinate:(CLLocationCoordinate2D)coordinate { self = [super init]; if (self != nil) { _coordinate = coordinate; } return self; } @end
Qualcuno può spiegarmi il significato della dichiarazione
@synthesize coordinate=_coordinate;
Conosco il significato di @synthesize
. Ma non riuscivo a capire l’affermazione completa. _coordinate
è una variabile membro. Ma cosa è coordinate
? Dove viene dichiarato?
Fondamentalmente, non significa nulla per il compilatore. È solo una pratica di codifica utilizzata su variabili di istanze private. Il tuo codice non si spezzerà se non lo usi.