这是我的 Rectangle
类中的一个方法。 Rectangle
对象有一个来自 XYPoint
类的名为 origin
的 ivar
。 XYPoint
对象的 ivar
为 float x
和 float y
。此方法可以设置 origin
还是会引用内存中与 pointy
相同的位置?
-(void) setOrigin:(XYPoint *) pointy {
origin.x = pointy.x;
origin.y = pointy.y;
}
最佳答案
你应该没问题,因为你传递的是 float ,而不是对象。默认情况下,传递浮点值会传递值 - 而不是内存位置 - 除非您在其前面放置 &
。
关于objective-c - 分配还是复制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11869194/