Ich habe das Verfahren folgendeWenn ein NSString in iPhone veröffentlichen
-(NSMutableArray *) getPaises {
NSMutableArray * paises;
paises = [[NSMutableArray alloc] init];
while(get new row) {
NSString *aPais = [NSString stringWithUTF8String:(char *)sqlite3_column_text(compiledStatement, 0)];
[paises addObject:aPais];
}
return paises;
}
Ich bin nicht die aPais Freigabe, denn wenn ich es die Anwendung abstürzt tun. Ich weiß nicht wann oder ob ich es irgendwo nach der Benutzung veröffentlichen soll und wenn ja, wie mache ich es. Geben Sie einfach das NSMutableArray ist genug? Oder muss ich es durchqueren und jedes Objekt freilassen?
Und wenn ich es nicht freigeben muss, wer ist verantwortlich für die Freigabe?
Ein Hinweis zur Methodenbenennung: In Cocoa gibt eine Methode namens "getFoo" foo als Referenz zurück: - (void) getFoo: (out NSMutableArray **) outArray. Um mit den Namenskonventionen von Cocoa konsistent zu sein, sollten Sie Ihre Methode einfach "paises" nennen. –