2011-03-26 120 views
-1

一個函數的測試,請參閱下面的代碼:關於產品NullExceptionError在C#

List<Square> tempArr = new List<Square>(); 
Coin tempCoin = new Coin(eCoinType.White); 
Square tempMove = new Square(1, eColumn.A, tempCoin); 
tempArr.Add(tempMove); 
m_OtheloGame.isLegalMove(tempMove, ref tempArr); 

與NullExceptionError最後一行畫「tempArr」的編譯器。

我不明白爲什麼,因爲我已經在第一行中分配了tempArr,所以它不能爲空。

+2

你能解釋一下你的意思是「編譯器繪製tempArr」嗎? – ChrisWue 2011-03-26 09:53:03

+0

是的我的意思是它用紅色加下劃線 – Mulder 2011-03-26 09:56:32

+0

當你試圖編譯它時,輸出是什麼? – ChrisWue 2011-03-26 09:58:14

回答

0

什麼isLegalMove()方法做,因爲tempArr中傳遞過來的裁判有可能,它可能被更改爲引用空

0

外觀爲isLegalMove方法中的煩惱。 此外,請轉到調試/例外並在兩列上啓用公共語言運行時例外:引發和用戶未處理。然後再次運行,應在isLegalMove方法內通知您發生實際錯誤的位置。