iOS5 ARC如何标记iVar的保留?

时间:2011-10-28 22:06:38

标签: iphone objective-c ios automatic-ref-counting

我有一个类通过总结NSNumbers来工作。这个类的一个特殊用途是只调用2种类型的数字:0和1.所以我在.h文件中声明了2个实例变量:

NSNumber* number1;
NSNumber* number0;

在init方法中:

 number0 = [[NSNumber alloc] initWithInt:0];
 number1 = [[NSNumber alloc] initWithInt:1];

当几分钟后使用该数字时,指针都是零。我怎样才能说服ARC在班级生活中保持我的变量活着?

1 个答案:

答案 0 :(得分:0)

确保在@property中它们在@interface中标记为strong。即,

@property (nonatomic, strong) NSNumber *number1;
@property (nonatomic, strong) NSNumber *number0;

不要忘记实施中的@synthesize。

在你的init中,你使用不使用属性的点语法是正确的,但为了获得属性的retain的好处,你应该尝试使用其他属性的点语法。