A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© runsunlife 中级黑马   /  2015-8-26 07:04  /  452 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1、id类型  
id是动态类型,程序只有在运行时才能确定它的具体类型。是指向哪个对象的。 
id是一种通用的对象类型,它可以用来存储属于任何类的对象也可以理解为万能指针  
id 类型的定义 :
Typedef struct objc object{ 
   Class isa; 
} *id; 
 局限性:调用一个不存在的方法,编译器会马上报错。 
 
iOS5之后推出了instancetype类型  
 
instancetype和id的异同  
1) 相同点都可以作为方法的返回类型  
2) 不同点  
1,instancetype可以返回和方法所在类相同类型的对象,id只能返回未知类型的对象;  
2,instancetype只能作为返回值,不能像id那样作为参数, 

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马