我想先說我先搜索了一下,發現了很多類似的問題,但在其他各種事情上卻沒有發現這個問題。C中變量之間的模糊性#
我有這樣的代碼:
namespace New_Game.GameClasses
{
/// <summary>
/// This is a game component that implements IUpdateable.
/// </summary>
public class Error : Microsoft.Xna.Framework.GameComponent
{
bool gameOver = false;
List<Enemy> enemies = new List<Enemy>();
public bool gameOver {
get { return gameOver; }
set { gameOver = value; }
}
public override void Update(GameTime gameTime, Vector2 target)
{
// TODO: Add your update code here
Rectangle playerRect = new Rectangle((int)target.X, (int)target.Y, 64, 64);
foreach (Enemy e in enemies)
{
e.Target = target;
e.Update(gameTime);
Rectangle enemyRect = new Rectangle((int)e.Position.X + 7, (int)e.Position.Y + 7, 32 - 7, 32 - 7);
if (playerRect.Intersects(enemyRect))
{
gameOver = true;
}
}
}
}
}
我的問題來自於一個錯誤說的: 'New_Game.GameClasses.Error.gameOver' 和 'New_Game.GameClasses.Error.gameOver'
之間的模糊如果我刪除了get/set方法,當我嘗試從我的Game1.cs中訪問gameOver時遇到了另一個錯誤。如果我將其更改爲以下,我會得到相同的錯誤:
public bool gameOver { get; set; }
我的問題是,如何解決模糊性錯誤?
1。同樣,下面的默認C#命名準則可以避免這樣的問題(大寫爲屬性 - 'GameOver',私人字段爲小寫 - 'bool gameOver;')。 –
我是C#的新手,所以我不知道這是一個命名指南。如果我有積分,我會贊成,但我不能,所以我只是說謝謝。 :) – slooker