Я хотел бы сохранить слабое отношение обнуления к объекту в NSDictionary
. Это ссылка на родительский NSDictionary
, поэтому я могу сканировать резервную копию большой структуры без поиска.
Я не могу использовать __weak
здесь; даже если моя локальная ссылка слаба, NSDictionary
сохранит сильную ссылку на объект, на который было слабо указано. И, конечно, NSDictionary
не может иметь nil
объектов.
Я нахожусь на iOS, а не на Mac, поэтому NSHashTable
недоступен. И я хочу, чтобы один объект был слабым; остальное должно оставаться сильным.
(Я собираюсь опубликовать свой ответ, поэтому у меня есть что отметить, как принято, если нет лучшего ответа. Но я надеюсь, что у кого-то есть лучший ответ.)