强参考周期未达到预期效果

时间:2014-12-08 05:34:40

标签: ios objective-c

我创建了一个名为Item的类,它有两个指向Item,* containedItem和* container的指针。我将它们声明如下:

@property (nonatomic) Item *containedItem
@property (nonatomic) Item *container

我在Item中覆盖了dealloc,如下所示:

- (void)dealloc
{
    NSLog(@"Destroyed: %@",self);
}

以便我可以看到哪些物品被销毁。我创建两个项目并使其成为一个指向另一个作为其容器,另一个指向第一个作为其包含。由于默认属性是强指针,我认为这会导致内存泄漏。但是,当我运行我的程序时,它显示两个项目都被销毁。我想知道当两个项目都有一个强大的指针(来自另一个)时,如何销毁这些项目。

0 个答案:

没有答案