这些分配变量的方法有什么不同?

时间:2016-10-10 23:47:06

标签: c# unity3d

创建一个专门用于分配变量的变量与使用new关键字创建一个符合值赋值的变量有什么区别?我知道他们都得到了相同的结果,我只想知道是否有任何性能差异和类似的东西。

例如:

this.transform.position = new Vector3(mousePosInBlocks, this.gameObject.transform.position.y, this.transform.position.z);

VS

Vector3 temp = new Vector3(mousePosInBlocks, this.gameObject.transform.position.y, this.transform.position.z);
this.gameObject.transform.position = temp;

此示例代码使用带有游戏对象的Unity 5s位置系统..

2 个答案:

答案 0 :(得分:2)

编译后的代码基本相同,几乎没有差异。感谢@Rup为我指出这一点。

答案 1 :(得分:1)

两者具有相同的最终结果,但是第二种方法是不必要的,因为新的变量' temp'创建并存储在内存中。因此,它需要一点点内存和少量处理能力。