![]() |
1
2
将其子类化并重写addObject以在添加之前检查计数?没有内置的方式。 这是一个基本的例子。。。没有测试,缺少初始化等,但这是核心。您还应该覆盖设置值:forKey:以类似的方式。
|
![]() |
2
1
没有用于此的API,但这样做的代码相当简单:
请注意,上面的代码不是线程安全的,但要使其线程安全,只需将函数的内容包装到
如果你想要一个数组,它可以被捆绑在一起,并且内置了这个限制,
不要
相反,具有最大长度的数组的行为与标准行为完全不同,因此它不应该是的子类
如果调用代码是您的,您可以使用上面定义的helper函数——您知道对象可能不会被添加,您可以适当地编写代码。如果调用代码来自其他地方(例如Cocoa或其他Apple框架),请使用普通的
|