gpt4 book ai didi

iphone - 向 NSArray 添加类别

转载 作者:搜寻专家 更新时间:2023-10-30 19:51:53 25 4
gpt4 key购买 nike

我使用辅助方法向 NSArray 添加了一个类别来进行排序。我的单元测试都通过了,但是当在模拟器中运行应用程序时它爆炸了。这可能是因为 NSMutableArray/NSCFArray class cluster stuff?

这里是错误:'NSInvalidArgumentException',原因:'*** -[NSCFArray sortBySequenceAsc]:无法识别的选择器发送到实例 0x489c1f0'

无论如何,向 NSArray 和 NSMutableArray 添加类别的正确方法是什么?

@interface NSArray (Util) 
- (NSArray *)sortBySequenceAsc;
@end

@implementation NSArray (Util)
- (NSArray *)sortBySequenceAsc {
//my custom sort code here
}
@end

最佳答案

我已经多次在 NSArray 上使用类别,没有任何问题,所以我猜你的问题出在其他地方(因为你的类别看起来是正确的)。

由于您收到“无法识别的选择器”错误,这意味着运行时不知道您的类别,这意味着它没有链接到您的二进制文件中。我会检查并确保您的类别的 .m 文件包含在适当的目标中,清理并重新构建。

编辑:例如,this blog post展示了如何为 NSArray 创建类别以创建原始数组的随机副本。

编辑 #2:Apple 关于类别的文档使用了扩展 NSArray 功能的具体示例,所以我很难相信“推荐”的方法是将数组包装在帮助对象。 Citation (search the page for the five "NSArray" references)

关于iphone - 向 NSArray 添加类别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1969999/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com