【发布时间】:2013-05-18 21:55:35
【问题描述】:
我想知道 ARC 下的正确方法。
我在控制器中有强大的 NSArray(我自己的自定义类对象)@property,当我初始化另一个控制器时,我必须将这些数组中的一个 NSString 传递给另一个弱控制器的指针。但我不喜欢这样,因为我需要对其进行排序
在主控制器中
_leftPanelViewController.repotLabels = [[self.availableDashBoards sortedArrayUsingDescriptors:@[sortByReportLabel]]];
而另一个控制器有
@property(nonatomic, strong)NSArray *repotLabels;
1) 据我了解,第一个返回弱指针,我将其分配给另一个弱指针,因此如果 mainController 中的代码超出范围,我的 reportLabel 将变为“nil”?
2) 因此,如果我将 reportLabels 属性设为(强),则可以解决问题,但还有其他方法吗?最后我是否也应该做这样的“复制”?
_leftPanelViewController.repotLabels = [[self.availableDashBoards sortedArrayUsingDescriptors:@[sortByReportLabel]]copy];
【问题讨论】:
标签: automatic-ref-counting strong-references