Objective-C - Должны ли мы использовать сильный, слабый или назначить для типа класса? - PullRequest
0 голосов
/ 08 июня 2018

Я знаю, что мы должны использовать сильные / слабые свойства объектов Obj-C / ivars.Но я обнаружил, что могу использовать strong для свойств типа Class / ivars.

@property (nonatomic, strong) Class testClass;

Код не вызовет ошибку сборки.Зачем?И мы должны использовать сильный или назначить?

1 Ответ

0 голосов
/ 08 июня 2018

Согласно Тайная жизнь классов

Объект класса не является экземпляром, но он определенно является полноценным объектом

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

Конечно, вы можете использовать strong для объекта.

Когда освобождается объект класса? - Простой ответ - когда программа заканчивается.

Нет причин заботиться о сохранении счетчика объекта, который никогда не будет выпущен во время работы программы.Это означает, что не имеет значения, если вы используете сильный / слабый / назначить, этот объект по-прежнему не будет уничтожен, пока программа не будет завершена.

Таким образом, вы можете использовать все, что хотите, они дадут тот же результат.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...