Angenommen, ich habe den folgenden Code in einer Klasse A geschrieben:
%Vor%Und in einer Klasse B bekomme ich diese Liste in gewisser Weise auf diese Weise:
%Vor% In Anbetracht der Tatsache, dass die returnList
mithilfe einer Autorelease-Methode zugewiesen wurde, wie kann ich garantieren, dass ich den Verweis darauf mit ARC (unter dem ich retain
nicht verwenden kann) nicht verlieren werde?
Muss ich [[NSArray alloc] init]
für das Array myNames
verwenden? Oder ich muss alloc
auf returnList
anstelle einer Autorelease-Methode verwenden? Oder kann ich mich einfach auf ARC verlassen? Oder gibt es eine andere Lösung?
ARC wird das für Sie übernehmen, Sie können sich also darauf verlassen und Ihre Geschäfte mit diesem Array erledigen. Wenn es feststellt, dass myNames
beibehalten werden muss, fügt es beispielsweise einen Retain-Aufruf für Sie hinzu oder führt alle anderen Schritte aus, wenn es den Code kompiliert, der es verwendet.
Tags und Links objective-c memory-management cocoa-touch automatic-ref-counting ios5