ios instancetype和id的区别

时间:2022-06-10
本文章向大家介绍ios instancetype和id的区别,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
/*
instancetype 和 id 都是万能指针,指向对象。
 不同点:
    1.id在编译的时候不能判断对象的真实类型,instancetype在编译的时候可以判断对象的真实类型
    2.id可以用来定义变量,可以作为返回值类型,可以作为形参类型;instancetype只能作为返回值类型
 
 注意:以后凡是自定义构造方法,返回值类型尽量使用instancetype,不要使用id

*/
- (instancetype)init
{
    self = [super init];
    if (self) {
        //
    }
    return self;
}

- (id)init
{
    self = [super init];
    if (self) {
        //
    }
    return self;
}