instancetypeVSid
作者:网络 软件教程库 2020-05-13
英文好的直接读下面链接的文章就好了:
http://stackoverflow.com/questions/8972221/would-it-be-beneficial-to-begin-using-instancetype-instead-of-id
https://developer.apple.com/library/ios/releasenotes/objectivec/modernizationobjc/adoptingmodernobjective-c/adoptingmodernobjective-c.html#//apple_ref/doc/uid/tp40014150-ch1-sw11
简单小结一下,就这么几点:
1使用 instancetype 编译器和ide 会做类型检查,而id不会做完整的类型检查
2instancetype 只能用来定义oc方法的返回值类型
3显式的使用init方法的时候,二者本质上是无区别的,即使用的是id,编译器也会翻译成instancetype. 但毫无疑问,使用instancetype更清晰.
4 instancetype有类型检查. 主要体现在+ (instancetype)factorymethoda; 之类的方法上.
5 从一致性的角度考虑,所有用id作为返回值类型的方法都应该将返回值类型替换为instancetype.
instancetype vs id
原文地址:http://www.cnblogs.com/agger0207/p/4471453.html
软件教程库 原文地址:https://www.itjcku.com/9999/1091376.html
Tags:
推荐内容