ここでは、「test」メソッドで「tempString」の自動解放を使用しました。ルールに従って、メインで「[一時保持]」を使用する必要があります。しかし、私はそれを使用しませんでした。それでも問題なく動作し、出力を印刷します。では、「保持」の必要性は何ですか?誰でも理由を教えてもらえますか?前もって感謝します。
-(NSMutableString *) test : (NSMutableString *) aString{
NSMutableString *tempString=[NSMutableString stringWithString:aString];
[tempString appendString:@" World"];
return tempString;}
int main (){
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
MemoryMgmt *memoryMgmt=[[MemoryMgmt alloc] init ];
NSMutableString *str1 =@"Hello";
NSMutableString *temp = [memoryMgmt test: str1];
NSLog(@" %@",temp);
[pool drain];
return 0;
}