首页 > 代码库 > libc++abi.dylib: terminate_handler unexpectedly threw an exception

libc++abi.dylib: terminate_handler unexpectedly threw an exception

在执行一个界面的时候,就是一直libc++abi.dylib: terminate_handler unexpectedly threw an exception,也没有指明是哪里错误。后来经检查发现是数组越界- (CellInfo_t *)getCellInfo:(NSIndexPath *)indexPath{    NSInteger row=[self getCellInfoFromIndex:indexPath];    return self.cellInfoArrayTwo[row];}- (NSInteger)getCellInfoFromIndex:(NSIndexPath *)indexPath{    NSInteger section=indexPath.section;    if (section==0) {        return indexPath.row;    }else if (section==1){        return [self numberOfRowsInSection:0]+indexPath.row;    }else{        NSAssert(NO, @"Invalid cellInfo From Index");    }    return -1;}- (NSInteger)numberOfRowsInSection:(NSInteger)section{    switch (section)    {        case 0:return 1;        case 1:return 12;        default:            NSAssert(NO, @"Invalid section index");            break;    }    return -1;}后经检查发现。我把
[self numberOfRowsInSection:0]的0写成1了,导致数组一直越界。程序crash

libc++abi.dylib: terminate_handler unexpectedly threw an exception