Block及内存管理iOS

iOS的@try、@catch()

2015-03-12  本文已影响2874人  iHTCboy

NSArray *tabBarItems=self.tabBar.items;

NSArray * title = @[@"首页",@"分类",@"购物车",@"消息"];

@try {

[tabBarItems enumerateObjectsUsingBlock:^(UITabBarItem * indexItem, NSUInteger idx, BOOL *stop) {

indexItem.title=[title objectAtIndex:idx];

indexItem.image=[UIImage imageNamed:[NSString stringWithFormat:@"menu_0%ld_normal",idx+1]];

NSLog(@"%ld",idx);

}];

}

@catch (NSException *exception) {

NSLog(@"%@",@"有异常");

}

@finally {

NSLog(@"%@",@"最后执行");

}

今天被同事问,所以学习了一下,为什么OC很少用@try @catch

在网上搜索到知乎上的答案,总结一下:

1、@try@catch解决异常的能力强吗?

2、@try@catch对资源消耗多吗?

3、Cocoa开发者习惯了?

结果是:

解决问题能力不强,并造成额外的开销,所以很少用?

问题留给自己,有时间在考证~

nice~

- 如果有什么疑问,可以在评论区一起讨论;

- 如果有什么不正确的地方,欢迎指导!

> 注:本文首发于iHTCboy's blog,如若转载,请注明来源。

上一篇下一篇

猜你喜欢

热点阅读