码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2017-04-30 16:07:41      阅读:238      评论:0      收藏:0      [点我收藏+]

标签:back   sse   .section   dexp   integer   rgb   数组越界   row   expected   

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

标签:back   sse   .section   dexp   integer   rgb   数组越界   row   expected   

原文地址:http://www.cnblogs.com/mthoutai/p/6789541.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!