2011-08-15 38 views
5

当我创建了一个名为,比如说,雪碧类的一个实例,我做这样的事情:为什么在声明变量时CGSize不使用*?

Sprite *mySprite = [[Sprite alloc]init]; 

但为什么创建CGSize或int型变量的时候,我不能使用*?基本上,什么是*的?

回答

16

*表示pointerCGSize被声明为structSprite是一个类,在Objective-C中,所有的类都被一个指针引用。


您可以找到Programming with Objective-C文档的附加信息。相关部分是使用指针来跟踪对象方法可以返回值

+1

+1,无法得到更好的回答。 – sidyll

+0

添加到乔的正确答案,一个'int'是一个原始类型,并直接存储在内存中,因此通常不会被指针引用。 –

+0

FWIW,“你需要知道的关于C语言中的指针”(http://boredzo.org/pointers/)也适用于Objective C。 –

相关问题