在执行一个界面的时候,就是一直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

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-06-13
  • 2021-06-16
  • 2021-03-30
  • 2021-09-02
  • 2021-09-19
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-06-15
  • 2021-12-27
相关资源
相似解决方案