iOS Thread1:Program received signal:"SIGABRT".

发生 Thread1:Program received signal:"SIGABRT". 如果你有容器类的操作,你就要注意了。

举个例子:

- (void)viewDidLoad{

      [super viewDidLoad];

      NSMutableArray *array=[NSMutableArray array];

      [array insertObject:@"StringObject" atIndex:1]; 

}

执行上面的例子,就会发生Thread1:Program received signal:"SIGABRT". 错误。

因为insertObject:atIndex:方法,atIndex接受的索引如果不是从0开始的话,就会发生这个问题。

 将 [array insertObject:@"StringObject" atIndex:1]; 改成 [array insertObject:@"StringObject" atIndex:0]; 就没错误了。

个人觉得这可能是苹果公司封装容器的时候,考虑到容器的安全性,需要容器有一个“基本”来“垫底”,才会报错误。

你可能感兴趣的:(iOS Thread1:Program received signal:"SIGABRT".)