0

在我的一个类中,我有一个名为 items 的派生属性,它基本上类似于:

- (NSArray *)items
{
    [self.unsortedSet.allValues sortedArrayUsingDescriptor:...];
}

然后在其他地方:

[self.items enumerateUsingBlock...{
    // do something with item
}]

在这种情况下,如果 self.items 有 X 个项目,那么枚举块是否会生成 self.items X 次?或者更安全的是:

NSArray *sortedItems = self.items;
[sortedItems enumerateUsingBlock...{}]
4

1 回答 1

0

那么枚举块会生成 self.items X 次吗?

不,只有一次。这是为了语义和效率。

还是这样更安全……</p>

语义取决于您的实现。

于 2012-10-02T00:54:13.357 回答