Moin,
ich habe ja irgendwann mal gelernt, dass mir jedes Objekt gehört, dass ich mit -init* oder -*copy erzeuge.
Dem scheint so nicht ganz zu stimmen.
Habe gerade in einer Kategorie NSArray und NSDictionary um -mutableDeepCopy erweitert, weil es mir doch arg zu mühsam und fehleranfällig erscheint, das jedes Mal von Hand tippen zu müssen.
Der Static Analyzer von Clang geht davon aus, dass -mutableDeepCopy ein Objekt zurück gibt, welches mir als Aufrufer nicht gehört. Bei -mutableCopy geht er jedoch wie gewohnt davon aus, dass mir das Objekt gehört.
Abgesehen von einem Hinweis in der Headerdatei, dass mir das von -mutableDeepCopy erzeugte Objekt eben doch nicht gehört: Wie kann ich das Dilemma lösen?
Die Methoden in -mutable*WithMutableMembers umbenennen?
Wäre schon geiler, wenn das gleich hieße. Da die mutableDeepCopy Methoden halt auch die mutableDeepCopy Methoden der jeweils anderen Collection aufrufen wollen und eventuell noch einmal NSSet als weitere Collection hinzukommt, ist das so einfach simpler zu implementieren.
Verwirrte Grüße aus Hamburch!
ich habe ja irgendwann mal gelernt, dass mir jedes Objekt gehört, dass ich mit -init* oder -*copy erzeuge.
Dem scheint so nicht ganz zu stimmen.
Habe gerade in einer Kategorie NSArray und NSDictionary um -mutableDeepCopy erweitert, weil es mir doch arg zu mühsam und fehleranfällig erscheint, das jedes Mal von Hand tippen zu müssen.
Der Static Analyzer von Clang geht davon aus, dass -mutableDeepCopy ein Objekt zurück gibt, welches mir als Aufrufer nicht gehört. Bei -mutableCopy geht er jedoch wie gewohnt davon aus, dass mir das Objekt gehört.
Abgesehen von einem Hinweis in der Headerdatei, dass mir das von -mutableDeepCopy erzeugte Objekt eben doch nicht gehört: Wie kann ich das Dilemma lösen?
Die Methoden in -mutable*WithMutableMembers umbenennen?
Wäre schon geiler, wenn das gleich hieße. Da die mutableDeepCopy Methoden halt auch die mutableDeepCopy Methoden der jeweils anderen Collection aufrufen wollen und eventuell noch einmal NSSet als weitere Collection hinzukommt, ist das so einfach simpler zu implementieren.
Verwirrte Grüße aus Hamburch!
«Applejack» "Don't you use your fancy mathematics to muddle the issue!"
Iä-86! Iä-64! Awavauatsh fthagn!
Iä-86! Iä-64! Awavauatsh fthagn!
kmr schrieb:
Ach, Du bist auch so ein leichtgläubiger Zeitgenosse, der alles glaubt, was irgendwelche Typen vor sich hin brabbeln. :-P