- (instancetype)initWithFrame:(CGRect)frame{ self = [super initWithFrame:(CGRect)frame]; if (self) { } return self; }
+ (id)something;
以上者两个方法,可能我们在码代码的过程中用过无数次,但是实际instancetype和id这两个具体区别,可能还真没怎么在意过,
相同点:
1、在类型表示上一样,都可以表示任何对象类型
不同点:
1、instancetype只能作为返回值类型来使用,而id可以用在参数类型上
2、instancetype的使用,编译器会自动检测返回值类型的真是类型
仅做记录!