使用ARC重新初始化/重新分配对象

时间:2013-01-16 22:14:30

标签: iphone ios memory-management automatic-ref-counting

我想知道在已经存在的(已分配的)对象上调用[[MyClass alloc] init]是否会在ARC中造成泄漏?或者它是否为您管理发布和重新分配?

将更合适地执行以下操作:

myObject = nil;
myObject = [[MyClass alloc] init];

哪个更合适?还有另一种方法可以做到这一点吗?

1 个答案:

答案 0 :(得分:5)

使用ARC,在重新分配之前不需要将myObject设置为nil,只需要这行代码就可以了:

myObject = [[MyClass alloc] init];

当xcode编译代码时,它会自动添加正确的释放机制。