我有以下(相關)碼:統一C#:錯誤試圖調用一個類的功能在更新()時
public class GameController : MonoBehaviour {
public class Timer
{
int elapsedTime;
int pausedTime;
bool isCounting;
public void Start()
{
int startTime = DateTime.Now.Millisecond;
while(isCounting)
{
elapsedTime = DateTime.Now.Millisecond - startTime;
}
}
}
private void Update()
{
//Debug logging of the timer functions
if(startButton.CompareTag("Clicked"))
{
Timer.Start();
}
}
}
此代碼生成以下錯誤:一個對象引用是非靜態字段,方法或屬性'GameController.Timer.Start()`所必需的。我怎樣才能解決這個問題?
(注:此錯誤的原因是,幾乎每一個場景不同,所以這是相當難稱之爲式兩份)
您不能在不實例化的情況下使用類對象。正如你已經聲明瞭你自己的Timer類。從中創建一個對象並使用它。所以經驗法則是任何非靜態類,你要先使用實例化它的對象。閱讀本教程https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/classes-and-structs/classes – Ramankingdom
可能的重複[C#錯誤:對象引用是必需的非靜態字段,方法或屬性](https://stackoverflow.com/questions/28792986/c-sharp-error-an-object-reference-is-required-for-the-non-static-field-method) – Hellium