1

我想知道当我在这种情况下创建没有@property 的变量时,ARC 是如何知道如何工作的:

@interface MyClass: NSObject
{
    NSString *name;
}
-(NSString*)name;
-(void)setName:(NSString*)the_name;

我可以在这段代码中使用 __strong 关键字吗?:

@interface MyClass : NSObject
{
    NSString __strong *name;
}

或者我必须以这种方式编写访问器方法?:

-(void)setName:(NSString*)the_name{
   name = __strong the_name;
} 
4

1 回答 1

2

不,你不需要做任何特别的事情:没有 ARC 关键字时,__strong关键字是隐含的。

编辑您也不需要__strong在 setter 中使用:ARC 知道要保留the_name,因为name已经是__strong参考。

于 2012-06-28T10:36:28.123 回答