, если вы знаете, что определенное целое должно быть использовано как объект хотя бы в одной точке жизненного цикла, должно ли оно быть объявлено и использоваться как NSNumber
с самого начала?Цель C - когда использовать NSNumber против примитива
Я знаю, что вычисления должны выполняться с использованием примитивных типов данных, и поэтому вы говорите [NSNumber numberWithInteger: myInt]
. Но если 90% времени вам нужен только для базового типа данных, другие 10% оправдывают создание NSNumber
и постоянно используют [NSNumber intValue]
для извлечения вашего примитива? Имеются ли заметные преимущества в производительности для прилипания к примитиву как можно дольше или преимущества OO NSNumber
превышают их?
Как новичок в Objective C, мне также интересно, что такое лучшая практика - от таких языков, как Ruby и PHP, где этого не происходит.
Хм Я действительно спрашиваю про примитивный тип Int, а не NSInteger – djt
@ChrisLoonam ах Теперь я вижу ответ на пару ниже принятого, у которого есть информация по моему вопросу. Благодаря! – djt
Обычно используется 'NSInteger' (который является typedef для' long' или 'int'), если вы по какой-то причине явно не нуждаетесь в объекте. – Rob