Error: Assets/beandefine.cs(23,1) (sorry Dani) Type or namespace definition, or end of file expected

Error: Assets/beandefine.cs(23,1) (sorry Dani) Type or namespace definition, or end of file expected

我经常收到这个错误!它不是文件名,因为它是 beandefine.cs(我想定义一个游戏对象)

代码如下:

using System.Collections.Generic;
using UnityEngine;

public class beandefine : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        
    }

    // Update is called once per frame
    void Update()
    {
        
    }

    void BEAN()
    {
            public var BeanPlayer = GameObject.BeanPlayer;
    }
}

请帮忙。我认为代码很好,但它不起作用。验证了 3 次,是的,仍然很好。所以不知道发生了什么,但它不想工作。感谢您的帮助。

人们什么时候会停止在方法中创建 class 级变量并想知道编译器为什么拒绝?显然不是今天。

问题在这里

void BEAN() { public var BeanPlayer = GameObject.BeanPlayer; }

你究竟想要什么?如果你想要 class 级别的变量,那么你需要在方法之外。如果您只在方法中需要它,请删除 public。 BeanPlayer 会抛出一个错误,因为 GameObject 不知道这些人的事情。您是要使用 getcomponent 吗?

我需要将 public var BeanPlayer = GameObject.BeanPlayer; 放入

public class beandefine : MonoBehaviour {

}