gpt4 book ai didi

c# - Unity3d c# - Vector3 作为默认参数

转载 作者:可可西里 更新时间:2023-11-01 08:56:17 26 4
gpt4 key购买 nike

我们如何添加 Vector3 作为方法的默认参数?例如:

Void SpawnCube(Vector3 p = new Vector3(0,0,0)){...}

我刚刚尝试了关于我遇到错误的行:

Expression being assigned to optional parameter `p' must be a constant or default value

我想自定义一个函数来生成一些游戏对象,如果我没有提供transform.position,它将转到(0,0 ,0)

最佳答案

我知道这已经得到回答,但我只想添加其他方法来做到这一点。 Vector3? pVector3 bar = default(Vector3) 应该这样做。

public void SpawnCube(Vector3? p = null)
{
if (p == null)
{
p = Vector3.zero; //Set your default value here (0,0,0)
}

}

作为htmlcoderexe 指出,

要使用 p,您必须使用 p.Value 或将 p 转换回 Vector3 ((Vector3)p)

例如,要使用 p 变量、p.Value.x 从该函数访问 x 值((Vector3)p).x.


public void SpawnCube(Vector3 bar = default(Vector3))
{
//it will make default value to be 0,0,0
}

关于c# - Unity3d c# - Vector3 作为默认参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30294216/

26 4 0
文章推荐: c# - Summernote 和 MVC c# 中的表单提交
文章推荐: c# - 序列化有时是数组的 Json 属性
文章推荐: c# - 检查 IEnumerable 是否为 IEnumerable