Как изменяется счетчик сильных ссылок на объект, когда он добавляется в коллекцию массива?

Когда объект добавляется в коллекцию массива (например, NSMutableArray в iOS), счетчик сильных ссылок (retain count) этого объекта увеличивается на 1.

Короткий ответ

Что ответить на собеседовании

Когда объект добавляется в коллекцию массива (например, NSMutableArray в iOS), счетчик сильных ссылок (retain count) этого объекта увеличивается на 1. Это происходит потому, что коллекция удерживает сильную ссылку на объект, чтобы гарантировать его существование, пока он находится в массиве.

Подробный разбор

Ответ с пояснениями

Когда объект добавляется в коллекцию массива (например, NSMutableArray в iOS), счетчик сильных ссылок (retain count) этого объекта увеличивается на 1. Это происходит потому, что коллекция удерживает сильную ссылку на объект, чтобы гарантировать его существование, пока он находится в массиве.

Пример на Objective-C:

NSMutableArray *array = [NSMutableArray new];
NSObject *obj = [NSObject new]; // retainCount = 1
[array addObject:obj]; // retainCount увеличивается на 1
// Теперь retainCount объекта примерно 2

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее