有时,在引入弧之前,我没有使用@property 声明,而是只使用 iVar,如下所示:
//Foo.h
@interface Foo : NSObject
{
NSString *str;
}
- (id)initWithStr:(NSString *)newStr;
..
//Foo.m
- (id)initWithStr:(NSString *)newStr
{
if(self = [super init])
{
str = [newStr retain];
}
return self;
}
- (void)dealloc
{
[str release];
[super dealloc];
}
...
如果我不想使用@property
声明,如何用 ARC 实现这样的事情?