2011-12-10 51 views

回答

2

new Unit[x, y];爲元素的引用提供存儲,但它不構造元素本身。你需要在你的代碼單獨爲它們分配:

for (int i = 0 ; i != x ; i++) 
    for (int j = 0 ; j != y ; j++) 
     unitsvalue[i,j] = new Unit(); 

這個原理不同值類型:如果你做一個Unitstruct,你就不需要兩個循環。

+0

我想要一個優化解決方案!不是2 for循環 – kartal

+0

@salamonti你可以用一個循環來完成,但是除非你使'Unit'成爲一個值類型,否則沒有辦法執行(x * y)賦值。 – dasblinkenlight