Unity3D C#/变量已分配但从未使用过(?)

时间:2015-08-19 03:37:59

标签: c# variables unity3d warnings

我有一点问题,我写了变量,我可以看到它们被声明和使用,但是统一控制台说它的值从未使用过......变量是distanceY

  

“Assets / Scripts / CameraWindowMove.cs(17,22):警告CS0414:已分配私有字段”CameraWindowMove.distanceY“但其值从未使用过”

我不知道问题是什么,有人可以帮助我吗?

以下是代码示例:

float distanceX, distanceY;

void Awake ()
{
    playerBoxCollider = GameObject.Find ("Player").GetComponent<BoxCollider2D> ();
    windowBoxCollider = GetComponent<BoxCollider2D> ();
    player = GameObject.Find ("Player");

}

void Start ()
{
    x = transform.position.x;
    y = transform.position.y;
    lookAhead = 0;
    distanceX = ((windowBoxCollider.bounds.size.x / 2) - (playerBoxCollider.bounds.size.x / 2));
    distanceY = ((windowBoxCollider.bounds.size.y / 2) - (playerBoxCollider.bounds.size.y / 2));

2 个答案:

答案 0 :(得分:0)

此警告告诉您,您只将值设置为distanceY,但未在任何地方使用它。

答案 1 :(得分:0)

这只是一个构建警告,它不会影响程序的功能。这是一个有价值的警告,它让你知道你创建了一个变量,为它分配了一个值,但之后从未在你的程序中使用它(就静态分析而言)。

在C#中,您可以通过脚本文件顶部的编译指示禁用它们

一些常见的是:

<input ng-model="user">

我不建议使用这些禁用,因为这些警告很有用。这只是为了发展。