Dopo un tutorial su treehouse, vedo questo popolare messaggio di avviso Object-C in XCode.conversione implicita c perde la precisione intera 'NSUInteger'
La mia funzione pulsante
- (IBAction)buttonPressed:(UIButton *)sender {
NSUInteger index = arc4random_uniform(predictionArray.count);
self.predictionLabel.text = [predictionArray objectAtIndex:index];
}
vedo sulla linea NSUInteger, ho pochi pochi dei stackoverflows simili e sembrano parlare di 32bit vs numeri a 64 bit e il tipo di getto, ma non sapete come per farlo qui?
mio predictionArray
- (void)viewDidLoad
{
[super viewDidLoad];
predictionArray = [[NSArray alloc] initWithObjects:
@"It is certain", @"It is decidely so", @"All signs say YES", @"The stars are not aligned",
@"My reply is no",
@"It is doubtful",
@"Better not tell you now",
@"Concentrate and ask again",
@"Unable to answer now", nil];
// Do any additional setup after loading the view, typically from a nib.
}
Hmm, ho appena provato questo, ma sempre lo stesso avvertimento. Quindi, come faccio a fondere NSUInteger? Cosa significa '(NSUInteger)'. O forse, cosa più importante, di cosa mi sta avvertendo? –
@LeonGaban: Ho inserito il cast nel posto sbagliato. –
Grazie! Sto ancora cercando di capire questo, quindi 'NSUInteger' è sempre un int a 32 bit? Ho provato a lanciarlo come 64 bit e ho ottenuto lo stesso errore. Quel po 'di cose è nuovo per me, non ho mai dovuto imbattermi prima di –