Когда использовать примитивы в Objective C?

Когда должен я использовать примитивы в Objective C вместо NSValue подклассы? Этот код является, конечно, инструментом для очистки (я думаю), чем использование NSNumber:

    float width = sliderOne.frame.size.width;
    float totalWidth = width * 2 + 10;

но есть ли какие-либо недостатки? Кроме того, это корректный, который я не должен называть release или что-нибудь с примитивами? Память становится освобожденной, когда они выходят из объема, затем?

5
задан Dan Rosenstark 7 July 2010 в 00:26
поделиться

3 ответа

Основные типы являются предпочтительными. Используйте объекты NSNumber и NSValue только тогда, когда вам нужно передать их как объект.

Единственный недостаток примитивных типов состоит в том, что вы не можете передавать их как объект.

Примитивные типы могут быть размещены в стеке (локальные переменные) или в куче (с malloc). Объекты можно размещать только в куче, что дороже, чем выделение стека.

4
ответ дан 14 December 2019 в 13:25
поделиться

Все, что вам удобнее использовать в вашем собственном коде, но обычно вы будете использовать NSw независимо, когда это нужно передать в какой-то API.

0
ответ дан 14 December 2019 в 13:25
поделиться

Основной недостаток использования примитивных типов в том, что их нельзя хранить в NSArray.

2
ответ дан 14 December 2019 в 13:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: