OC在C语言基础上新增的基本数据类型

来源:互联网 发布:如何文本安装linux 编辑:程序博客网 时间:2024/06/07 07:45



 OC 支持C中的所有的数据类型 

   C中数据类型:基本  int 构造 数组结构体 枚举,指针 int *p1 空类型 viod typedef 

 

 新增的数据类型,BOOL类型  可以存YES或者NO中的数据  存储条件表达式的结果

 BOOL的本质,是有符号的Char变量

 

 Boolen 类型的变量,可以存储 true flase 

 存储条件表达式的结果

 Boolen的本质,是有符号的Char变量 typedef unsigned char

 

 

 区别 BOOL 要多元化别的语言,

 

 class 类型  是个类 

 

 id 万能指针 

id和void *并非完全一样。在上面的代码中,id是指向struct objc_object的一个指针,这个意思基本上是说,id是一个指向任何一个继承了Object(或者NSObject)类的对象。需要注意的是id是一个指针,所以你在使用id的时候不需要加星号。比如id foo=nil定义了一个nil指针,这个指针指向NSObject的一个任意子类。而id *foo=nil则定义了一个指针,这个指针指向另一个指针,被指向的这个指针指向NSObject的一个子类。

 

 nil NULL 差不多   nil和C语言的NULL相同,在objc/objc.h中定义。nil表示一个Objctive-C对象,这个对象的指针指向空(没有东西就是空)。

 

Nil  首字母大写的Nil和nil有一点不一样,Nil定义一个指向空的类(是Class,而不是对象)。

 SEL 方法选择器 


IMP  从上面的头文件中我们可以看到,IMP定义为 id (*IMP) (id, SEL, …)。这样说来, IMP是一个指向函数的指针,这个被指向的函数包括id(“self”指针),调用的SEL(方法名),再加上一些其他参数。
 
说白了IMP就是实现方法。

Objective-C 函数指针-------IMP
函数指针 

 


 block用来封装一段代码,可以在任何时候执行的代码块







0 0
原创粉丝点击