次のコードを参照してください。
- (void) setSomeThing:(NSString *) someThingNew
{
if(someThing!=someThingNew)
{
[someThingNew retain];
[someThing release];
someThing = someThingNew;
}
}
... ...
- (void) dealloc
{
[someThing release];
[super dealloc];
}
@end
setter のパラメータはsomeThingNewsetterretainメソッドにありました。つまり、その保持カウントは 1 です。
ここで質問:someThingNewすべきreleaseですか?
それとも同じオブジェクトを指しsomeThingているからで、メソッド内でそう指しているのですか?someThingNewdeallocsomeThingreleasesomeThingNewnil