我对底线命名和自我有点困惑。下列代码可以吗?
@interface MyClass()
@property (nonatomic,retain) NSString *name;
@property (nonatomic,retain) NSString *surname;
@end
@implementation MyClass
@synthesize name = _name;
@synthesize surname = _surname;
然后,当我需要分配值时,执行此操作
self.name = [someParam retain];
最佳答案
否,这不行,因为self.name
还将保留您在属性中声明的值。
这将保留:
self.name = someParam;
其他方式则相同(请注意释放当前的var):
if (_name != someParam) {
if(_name) {
[_name release], _name = nil;
}
_name = [someParam retain];
}
关于iphone - iOS变量名称和内存管理,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10549156/