创建浮动时出现意外符号'public'

时间:2016-09-11 02:05:20

标签: c# error-handling symbols

我是团结的新手,但每当我创建变量时都会出现错误。

它表示错误cs1525:意外符号'public'

这是我的脚本

using UnityEngine;
using System.Collections;

public class move : MonoBehaviour
{

    // Use this for initialization
    void Start ()
    {
        public float speed = 3.0f;
    }

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

    }
}

2 个答案:

答案 0 :(得分:2)

类成员应该在类块中定义,但在方法之外。

将所有“公共”行移到“void Start()”行上方。

答案 1 :(得分:0)

正如Flux和Peter所提到的,公共和私人等访问修饰符只能应用于类级别成员。这意味着与您的职能处于同一级别的成员。

根据您是想在此类中的任何位置使用速度变量还是仅在一个函数中使用速度变量,将决定您使用的方法。

现在根据我在游戏编程方面的经验,速度是你想要的类级别变量,你也希望能够从其他对象访问该变量。

所以我也会指出你应该使用封装是有充分理由的。如果在某些时候你想要改变速度变量的使用方式或计算方式,那么封装将允许你改变那个"属性"的实现。无需修改使用它的其他对象中的代码。

e.g。

public class move : MonoBehaviour
{
    private float speed = 3.0f;

    public void SetSpeed(float newSpeed)
    {
        speed = newSpeed;
    }

    public float GetSpeed()
    {
        return speed;
    }

    // Use this for initialization
    void Start ()
    {
        ...
    }

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