Suppose, I have C-arrays defined as follows: int count = [dictionary count]; id __unsafe_unretained values[count]; id __unsafe_unretained keys[count];
I fill these arrays with: [dictionary getObjects:values andKeys:keys]; Now, I would like to "reuse" these arrays through holding objects maintained by ARC (if possible): for (int i = 0; i < count; ++i) { keys[i] = [keys[i] copy]; values[i] = [values[i]] copy]; } NSDictionary *other = [NSDictionary dictionaryWithObjects:values forKeys:keys count:count]; This won't work in ARC, since the arrays are declared __unsafe_unretained and this would cause the newly created object immediately be deallocated once it is assigned to the array's element. What I would like to avoid is to use separate arrays (appropriately declared), and also avoid to disable ARC and maintain the release counts manually. Is there a way to extend the lifetime of the created objects, or is there a way to "re-declare" the arrays so that ARC can maintain the references - or is there any other simple "trick"? Thanks for suggestions! ;) Andreas _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com