NSNumber intValue给出了EXC_BAD_ACCESS

Mar*_*ark 0 iphone exc-bad-access objective-c nsnumber

我有一个NSNumber通过第三方API传递,当我在索引上调用intValue时,我得到一个EXC_BAD_ACCESS错误:

-(CPFill *) barFillForBarPlot:(CPBarPlot *)barPlot recordIndex:(NSNumber *)index; 
{
    NSLog(@"bar index %i", index);
    int value = [index intValue];
}
Run Code Online (Sandbox Code Playgroud)

我在调试器中得到的输出是:

条形指数0

条形指数1

程序接收信号:"EXC_BAD_ACCESS".

到底他妈发生了什么?

我注意到第一次调用该方法时,index是nil,但下次显然不是......

我怎么调试这个?!?!它是如此微不足道的事情,但我似乎无法解决它!

Chu*_*uck 6

一个快速的Google出现了一个框架,似乎用一个NSUInteger参数调用这个方法.假设这是有问题的库,您错误地将参数键入为NSNumber*.当你认为你看到nil索引时,你实际上只是看到索引0.