分配还是复制?

时间:2012-08-08 16:41:43

标签: objective-c reference assign

这是我Rectangle课程中的一个方法。 Rectangle对象的ivarorigin来自班级XYPointXYPoint对象的ivar float xfloat y。此方法可以设置origin,还是会引用内存中与pointy相同的位置?

-(void) setOrigin:(XYPoint *) pointy {
    origin.x = pointy.x;
    origin.y = pointy.y;
}

2 个答案:

答案 0 :(得分:3)

你应该没事,因为你传递的是漂浮物,而不是物体。默认情况下,传递一个浮点值会传递值 - 而不是内存位置 - 除非你在它前面放置一个&

答案 1 :(得分:0)

是的,这是完全可以的,因为你分配的值不是指针。 :)