【问题标题】:Unity - Vector3 struct - pass value type by referenceUnity - Vector3 struct - 通过引用传递值类型
【发布时间】:2019-03-07 21:02:14
【问题描述】:

在 Unity 中,您必须在代码中多次处理 Vector2Vector3 值。两者都是结构,这意味着当您使用小函数使代码模块化时,每次将这些值传递给函数参数时,您都会复制它们。是的,您将它们复制到堆栈中,但如果我们可以传递它的引用,我们仍然可以减少工作量。我们可以通过引用将值类型传递给函数而不处理装箱问题。

换句话说,我可以在堆栈上获取值类型变量的引用以供以后使用吗?

附:我是一个 C++ 人,这就是为什么我提出这么愚蠢的问题 :)

【问题讨论】:

标签: c# function reference pass-by-reference value-type


【解决方案1】:

是的,您可以在 C# 中通过引用传递变量。示例:

void Foo(ref Vector3 myVec)
{
  ...
}

Vector3 vectorA = Vector3.Zero;
Foo(ref vectorA);

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2019-05-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-25
  • 1970-01-01
  • 2020-04-01
相关资源
最近更新 更多