注册 登录
编程论坛 C# 论坛

请问为什么在方法中使用访问修饰符会报错?

bxe 发布于 2019-08-29 11:44, 1923 次点击
在学习过程中,偶然把原文定义到方法外的字段写到了方法中,结果似乎整个方法的性质都放生了改变
程序代码:
using UnityEngine;

public class Graph : MonoBehaviour
{
    public Transform pointPrefab;
    public int resolution = 10;

    private void Awake()
    {
        private int a ;//这句原文为字段
        Vector3 scale = Vector3.one / 5f;
        Vector3 position;
        //position.y = 0f;
        position.z = 0f;
        for (int i = 0; i < 10; i++)
        {
            Transform point = Instantiate(pointPrefab);
            //point.localPosition = Vector3.right * ((i + 0.5f) /5f -1f);
            position.x = (i + 0.5f) / 5f - 1f;
            position.y = position.x * position.x;
            point.localPosition = position;

            point.localScale = scale;
        }
    }

}
就比如position提示“不存在position”,请问其中的道理是什么?
只有本站会员才能查看附件,请 登录



[此贴子已经被作者于2019-8-29 11:45编辑过]

2 回复
#2
bifujian1122019-08-29 16:32
局部变量不能使用修饰符, 因为外部本来将访问不到
#3
bxe2019-08-29 19:31
回复 2楼 bifujian112
是这样啊,主要我还是想问一下,在方法中使用访问修饰符,会使方法性质发生什么改变。
因为之后声明的局部变量找不到了,这是编辑器造成的还是语法中有我不了解的部分呢?
1