Domanda

Ho un Objective-C NSMutableDictionary dichiarato all'interno della sezione @interface di una classe, con i metodi getter / setter, in questo modo:

@interface myClass : NSObject
{
     NSMutableDictionary *dict;
}
- (void) setDict: (NSMutableDictionary *) newDict;
- (NSMutableDictionary *) dict;

All'interno alcuni dei miei metodi @implementation voglio modificare dict . Mi piacerebbe attenersi a standard di linguaggio Obj-C e modificarlo "correttamente". E 'OK per modificare in questo modo, utilizzando il getter, ma non il setter:

[[self dict] removeObjectForKey:@"myKey"];

... o c'è un modo migliore per fare questo?

È stato utile?

Soluzione

Questo sarà il lavoro, ma perché non fare:

[dict removeObjectForKey:@"myKey"];

All'interno implementazione di una classe, si ha accesso diretto alle variabili di istanza, e li utilizzano direttamente è idiomatico Objective-C.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top