我对 Objective-C 和分配/释放对象有点困惑。
如果我这样做:
NSString *myString;
if([someString isEqualToString: @"test1"]){
myString = @"got 1";
}else{
myString = @"got 2";
}
我必须myString
在那之后释放吗?
与自定义对象相同:
myOwnObject *someObject = [someArray objectAtIndex: 1];
myButton.label1.text = someObject.name;
我必须释放someObject
吗?
我问的原因是我在一个方法中遇到了内存泄漏,我找不到它在哪里。所以我试图弄清楚我是否正确地执行了分配/释放的东西。泄漏发生在 NSPlaceholderString 上(我猜它隐藏在我的 NIB 文件中)。
另外 - 如果我有一个对象,请分配它,但只使用一些属性,但在 dealloc 上释放每个属性 - 这会导致内存泄漏吗?
对不起-希望我的问题至少有一些意义:)
谢谢你的帮助!