foo*_*512 0 macos cocoa exc-bad-access objective-c
我正在尝试调试与NSArray相关的问题.我得到一个例外:
EXC_BAD_ACCESS(代码= EXC_1386_GPFLT)在此行:
NSArray *items = [[NSArray alloc] initWithObjects:@"A", "B", "C", nil];
Run Code Online (Sandbox Code Playgroud)
这段代码在NSView内部 - (id)initWithFrame:(NSRect)框架内.
是什么导致我得到这个例外?我是Google-d的例外,我还没有找到其他人获得它.
此项目适用于OS X而非iOS.
你传递的第一个参数initWithObjects:是一个对象(它是一个实例NSString),但接下来的两个不是.将非对象类型插入到Objective-C集合中是非法的.
您需要在所有字符串文字前加上@符号,以使它们成为所有对象,如下所示:
NSArray *items = [[NSArray alloc] initWithObjects:@"A", @"B", @"C", nil];
Run Code Online (Sandbox Code Playgroud)