2011-10-27 106 views
1

我正在製作一個格鬥遊戲,並且我試圖保持玩家輸入的一系列動作。出於某種原因,我無法將我的字符串添加到隊列中。入隊C#隊列

moverecorder.Enqueue(instructions); 

「指令」 是一個三字符的字符串。每當這運行,我得到的錯誤:

NullReferenceException: Object reference not set to an instance of an object

我試過用字符串替換'指令',但錯誤仍然存​​在。

如何排隊字符串?

+1

你確定moverecorder不是null嗎? –

+0

在將項目添加到隊列之前是否創建了隊列實例? – Tariqulazam

+0

謝謝你們:)這是正確的。我不認爲我必須像這樣初始化它,因爲我的印象是隊列能夠洞察多種數據類型。 – Magicaxis

回答

3

如果你看看definition Queue.Enqueue你會看到傳遞給隊列的值可以爲null。所以你的錯誤不是來自你傳遞的論點。

可能您的moverecorder爲空。

+0

您是對的:D謝謝 – Magicaxis

1

大概你需要moverecorder = new Queue<string>();在你嘗試排隊之前。

+0

Thhaaats它是什麼:D謝謝:D – Magicaxis