这可能是一个更多关于对象分配/保留/释放的问题,但我将使用 NSString 作为示例。我知道我可以做到:
NSString* myString = [[NSString alloc] initWithString:@"Test"];
本质上分配和初始化我的变量 myString 引用的字符串,稍后我应该调用 [myString release] 。但是,如果在我这样做之后,我将其设置为其他一些字符串,例如:
myString = someOtherString;
这是否本质上会造成内存泄漏,因为我已将指针重新分配给另一个对象并丢失了对我分配的原始对象的所有引用?
如果我只是想亲自分配和释放一个字符串,然后在不同时间更改它的值,我应该使用除 '=' 之外的其他语法还是重载以正确更改最初由 myString 表示的对象的内容当我使用 =.