【问题标题】:Unity how to create an object without the new keywordunity如何创建没有new关键字的对象
【发布时间】:2016-03-18 16:14:21
【问题描述】:

我想知道为什么当我创建一个自定义类时,我必须像这样声明一个对象:

 Person Bob = new Person;

但对于 Unity 的自定义类,我没有;示例:

 puiblic RaycastHit hit;
 public Color myColor;
 public RigidBody rB;

【问题讨论】:

  • Person Bob = new Person 无论如何都不会编译。 RigidBody 一个类,所以你必须打电话给new所以不确定你从哪里得到这个想法
  • 我投票决定将此问题作为题外话结束,因为问题很简单,不太可能对未来的读者有任何用处

标签: c# class object unity3d unity5


【解决方案1】:

后一个示例只是创建一个可以保存对象实例的变量。它实际上并没有创建任何东西的实例。

如果这些变量恰好是结构,它们将具有默认值。

【讨论】:

    【解决方案2】:

    RaycastHitColor 不是 classes,它们是 structs。这意味着它们的声明就像 int 一样,它们可以立即投入使用,而无需 new

    另一方面,RigidBody 是一个class,所以这个声明没有实例化一个对象,它只是声明了一个对一个对象的引用,它必须被实例化或者以其他方式进一步获取。

    【讨论】:

      猜你喜欢
      • 2022-06-13
      • 2020-09-18
      • 1970-01-01
      • 2023-03-19
      • 1970-01-01
      • 1970-01-01
      • 2016-07-09
      • 1970-01-01
      • 2023-04-07
      相关资源
      最近更新 更多