Eu uso [NSNumber numberWithInt:42]
ou @(42)
para converter um int em NSNumber antes de adicioná-lo a um NSDictionary:
int intValue = 42;
NSNumber *numberValue = [NSNumber numberWithInt:intValue];
NSDictionary *dict = @{ @"integer" : numberValue };
Quando recupero o valor do NSDictionary, como posso transformá-lo de NSNumber em int?
NSNumber *number = dict[@"integer"];
int *intNumber = // ...?
Emite uma exceção dizendo que a conversão é necessária quando eu faço dessa maneira:
int number = (int)dict[@"integer"];