在MonoDevelop的,我有以下代碼編譯:爲什麼`new int [x] {}`無效?
int[] row = new int[indices.Count]{};
然而,在運行時,我得到:
Matrix.cs(53,53):錯誤CS0150:一個 常數值預期(CS0150) (testMatrix)
我知道這個錯誤是什麼手段,迫使我然後調整數組:
int[] row = new int[indices.Count]{};
Array.Resize(ref row, rowWidth);
這是我剛剛處理的事情,因爲我在Linux上使用MonoDevelop?我確信在.Net 3.5下,我能夠用包含數組寬度的變量初始化一個數組。任何人都可以證實這是孤立的嗎?如果是這樣,我可以將bug報告給bugzilla。
這個問題可能是因爲你混合陣列的初始化和對象初始化。刪除'{}',你應該沒問題。另外,我試圖在OpenSuse11.2上的gsharp中初始化這個數組,並且它會立即失敗並帶有'{}'。 – 2010-05-16 21:42:00