Il seguente è nel mio file h:inizializzazione NSDictionary
NSDictionary *originalValues;
@property (nonatomic, retain) NSDictionary *originalValues;
Questo è il file .m a init il NSDictionary.
@synthesize originalValues;
- (void)viewDidLoad {
// copy original values when view loaded
originalValues = [[NSDictionary alloc] initWithObjectsAndKeys:place.city, @"city", place.cuisine, @"cuisine",
place.latitude, @"latitude", place.longitude, @"longitude", place.name, @"name", place.rating,
@"rating", place.state, @"state", place.street, @"street", place.telephone, @"telephone",
place.timesVisited, @"times visited", place.uppercaseFirstLetterOfName, @"first letter",
place.website, @"website", place.zipcode, @"zipcode", nil];
}
Il problema sono solo i primi quattro oggetti e le chiavi vengono aggiunte. Dopodiché, non vengono aggiunti al dizionario a partire da place.name, @ "name". Ho fatto un NSLog sull'intero dizionario e le uniche cose emesse erano i primi quattro valori come ho accennato, quindi ho fatto un NSLog su place.name e sta emettendo un valore quindi so che qualcosa dovrebbe essere emesso anche per questa chiave/valore paio. C'è qualcosa che mi manca qui? Sono curioso di sapere perché tutti i valori non vengono inizialmente aggiunti al NSDictionary?
@TReddy evito che l'espressione ternaria in tutta la mia C e C++ di codifica. Ma dal momento che questo è oggettivo-c che è generalmente compilato solo usando gcc o Apple llvm, non trovo alcun problema con l'utilizzo. – Joe