Ich versuche, eine mutableCopy eines Planeten-Objekts, das 5 Instanzvariablen enthält (einer von ihnen ist ein NSMutableArray von String-Literalen zu machen. Mein Problem ist, dass ich unsicher bin, wie ich die newPlanet>data auf eine Kopie von self>data setzen kann, macht das Sinn?
-(id) mutableCopyWithZone: (NSZone *) zone {
Planet *newPlanet = [[Planet allocWithZone:zone] init];
NSLog(@"_mutableCopy: %@", [newPlanet self]);
[newPlanet setName:name];
[newPlanet setType:type];
[newPlanet setMass:mass];
[newPlanet setIndex:index];
// NSMutableArray *data; HOW TO: newPlanet>data = self>data?
return(newPlanet);
}
EDIT_001:
Aufgrund der Kommentare von Chuck & bbum habe ich meine Methode aktualisiert und Folgendes hinzugefügt ...
@property(retain) NSMutableArray *data;
@synthesize data;
.
-(id) mutableCopyWithZone: (NSZone *) zone {
Planet *newPlanet = [[Planet allocWithZone:zone] init];
NSLog(@"_mutableCopy: %@", [newPlanet self]);
[newPlanet setName:name];
[newPlanet setType:type];
[newPlanet setMass:mass];
[newPlanet setIndex:index];
NSMutableArray *copiedArray = [[self data] mutableCopyWithZone:zone];
[newPlanet setData: copiedArray];
[copiedArray release];
return(newPlanet);
}
sehr geschätzt
gary