这显然是一个noob问题,但在XNA中是......
Vector2 a;
Vector2 b;
a = b;
在任何情况下都相同:
a.X = b.X;
a.Y = b.Y;
答案 0 :(得分:3)
Vector2
是struct
(值类型)。
所以,如果你做a = b
。
这意味着它将b
的内存复制到a
。它相当于:
a.X = b.X;
a.Y = b.Y;
所以,如果你这样做:
b = new Vector2(1, 2);
a = b;
b.X = 5;
Console.WriteLine("a.X = {0}, a.Y = {1}", a);
Console.WriteLine("b.X = {0}, b.Y = {1}", b);
结果是:
a.X = 1, a.Y = 2
b.X = 5, b.Y = 2