赋值的左侧必须是变量,属性或索引器

0 c# unity-game-engine

由于某种原因,我所拥有的代码不起作用,它会出现调试错误"赋值的左手必须是变量,属性或索引器",这是什么意思?任何帮助都将是非常棒的谢谢!

void Update ()
{
    GameObject.FindGameObjectWithTag ("player");
    if (GameObject.FindWithTag ("player") = false) 
    {
        restart1();
    }
}
Run Code Online (Sandbox Code Playgroud)

Cas*_*sey 5

您正在使用赋值运算符=而不是相等测试运算符==.

消息告诉您无法分配GameObject.FindGameObjectWithTag ("player")表达式的结果.

您可以通过仅使用if (myCondition)if(!myCondition)不检查相等truefalse测试布尔值来避免此错误(可能会运行但会导致意外错误,如果左侧可分配)的风险.

  • *您不能在if语句中分配变量*此语句错误.您可以为变量赋值(即使在if语句中),但错误是因为您无法为值赋值. (2认同)