У меня есть код, который должен оставаться как С++, но мне нужно хранить объекты objective-c в этих классах С++. Объекты не будут упоминаться нигде, пока они хранятся здесь, поэтому я не могу их удалить из-под меня. Перед ARC я просто сохранил их перед тем, как поместить их в класс С++, и автореализовал их, когда они были удалены. Все работало штрафы.
Но с ARC я не уверен, что делать. Делает ли переменные С++ __unsafe_unretained достаточно? Кажется, это не так, потому что, как только код obj-c больше не будет использовать эти объекты, он будет удален, или я не понимаю, что делает __unsafe_unretained. Могу ли я вызвать CFRetain() и CFAutorelase() в ARC?
Каков правильный способ борьбы с этим при ARC? Что делает NSArray глубоко, чтобы сохранить хранящиеся объекты?