如何在不传递所有参数的情况下调用函数?

时间:2021-06-13 18:07:37

标签: c# unity3d

  • 我有一个带有 4 个参数的函数。
  • 有时我不叫它 有所有 4 个参数要传递给它,所以我只想传递 1,2 或 3 个参数。

Unity 在这种情况下显示错误。如何将这些参数标记为“可选”,或者是否有更好的解决方案?

示例:

void example(Texture texture1, Texture texture2, Texture texture3, Texture texture4) {

  renderer1.material.mainTexture = texture1;

  if (texture2 != null) {
    renderer2.material.mainTexture = texture2;
  }
  if (texture3 != null) {
    renderer3.material.mainTexture = texture3;
  }
  if (texture4 != null) {
    renderer4.material.mainTexture = texture4;
  }

}

    public void callExample(){
    example(texture1, texture2);
};

1 个答案:

答案 0 :(得分:1)

要使参数可选,您应该提供默认值,就像这样:

void example(Texture texture1, Texture texture2 = null, Texture texture3 = null, Texture texture4 = null) {