1
est un littéral et le compilateur en fera le type numérique approprié si cela est approprié.
Notez, cependant que tandis que NSInteger
et int
sont dans la plupart des buts et la même chose, NSNumber
est un type d'objet. Dans ce cas, votre code n'a pas de sens (et ne devrait pas compiler sans avertissements).
(En fait, il y a des circonstances où il serait une sorte de sens, en termes d'arithmétique des pointeurs, mais c'est tout à fait pas ce que vous voulez.)
Pour le cas NSNumber, vous auriez plutôt voulez quelque chose comme:
day = [NSNumber numberWithInt:[day intValue] + 1];
Intéressant ... semble être un point important ... – Moshe