ios开发--instancetype

2017-08-28  本文已影响20人  不做大哥好多年

推荐所有以前使用id作为返回类型的工厂方法和init方法应改用instancetype为返回类型。

使用id类型回引起类型安全问题。例如在你头脑发热写出"NSString *s =[NSArray array]“这样的代码,而编译器不会警告(虽然之后当你对创建的NSArray对象发送NSString类专有的方法时会引发崩溃)。

使用instancetyoe能帮你保证一定程度上的通用性,它会始终要求编译器返回值类型必须是消息接受者(或其子类)的类型。

上一篇下一篇

猜你喜欢

热点阅读