ich [anArray retainCount]
verwendet habe die Beibehaltungszähler des Arrays zu erhalten .. (Ich weiß, das sollte nicht verwendet werden, aber ich bin mit nur Konzept Lernen behalten)behalten Zählung im iphone
Im Anschluss an meinem Code.
NSString *str = [[NSString alloc] initWithFormat:@"a,b,c,d"];
NSArray *anArray =[[NSArray alloc]init];
NSLog(@"Retain count: %i", [anArray retainCount]);
anArray=[str componentsSeparatedByString:@","];
NSLog(@"Retain count: %i", [anArray retainCount]);
Ausgang
Retain count: 2
Retain count: 1
ich denke, es aber umgekehrt sein sollte ....
["Was erhöht die Anzahl der Retainer eines Objekts?"] (Http://stackoverflow.com/questions/1181010/what-increases-an-objects-retain-count) könnte eine Lektüre wert sein. – jensgram
Entschuldigung, aber wenn ich diesen Code benutze es beide Zeit zeigen Anzahl 1 behalten. Und das ist richtig, weil nur Array-Objekt für das Array freigeben müssen – Ishu
Warum die OVR-Anzahl war 2 ist jemand raten. (aber wie einige Leute erwähnen, Sie sollten nicht auf den Wert abhängen). Es könnte NSArray selbst in den Autorelease-Pool hinzugefügt werden? – seand