创建 NSArray 时出现异常



我正在尝试调试与NSArray相关的问题。我收到一个例外:

EXC_BAD_ACCESS(代码=EXC_1386_GPFLT)在此行:

NSArray *items = [[NSArray alloc] initWithObjects:@"A", "B", "C", nil];

此代码位于 NSView 内的 -(id)initWithFrame:(NSRect)frame 内。

是什么导致我出现此异常?我已经谷歌搜索了这个例外,但我还没有找到其他得到它的人。

这个项目适用于OS X,而不是iOS。

你传递给initWithObjects:的第一个参数是一个对象(它是NSString的实例),但接下来的两个不是。将非对象类型插入到 Objective-C 集合中是非法的。

您需要为所有字符串文本添加@符号前缀,以使它们成为所有对象,如下所示:

NSArray *items = [[NSArray alloc] initWithObjects:@"A", @"B", @"C", nil];

最新更新