Why aren't objects of type 'id' initialized as pointers with a '*' in Objective-C?

后端 未结 3 2006
醉酒成梦
醉酒成梦 2021-01-25 03:29

If I\'m using Objective-C, here\'s how I declare an initialize an int:

int a = 1;

vs an object:

myObj *a = [[myObj alloc] init]         


        
3条回答
  •  终归单人心
    2021-01-25 04:08

    Because id means identifier. Identifier, like pointer, identifies the object. Identifier isn't the object itself.

    You can always treat it as typedef * id if you want.

提交回复
热议问题