id数据类型可存储任何类型的对象。在objc中,id相当于c++里面的(void*)类型,相当于Java里面的object类型。

从某种意义来说,它是一般对象类型。例如:

[objc] id number; [/objc]

将number声明为id类型的变量。

可声明方法使其具有id类型的返回值,如下:

[objc] -(id)newObject:(int)type; [/objc]

这个程序行声明了一个名为newObject的实例方法,它具有名为type的单个整型参数并有id类型的返回值。

应该注意,对返回值和参数类型来说,Id是默认的类型。比如:

[objc] +allocInit; [/objc]

声明了一个返回id类型值的类方法。

基本数据类型

objc_type
objc_type