instancetype和id的区别
id的缺点
NSString *str = [XMGShop shopWithDict:nil];
NSLog(@"%@", str.length);
提问:会不会报错?会报什么错?
答:shop没有length方法,所以用id会发生一些莫名其妙的错,而且编译器不会报错(在开发阶段没发现是很严重的问题)
id和instancetybe的相同和不同点:
* 都可以代表任意类型
* instancetype只能作为返回值
* id类型可以作为返回值,也可以作为参数,也可以定义变量
* instancetype会类型检测,id不会进行类型检测
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步