3 回答

TA貢獻(xiàn)1834條經(jīng)驗(yàn) 獲得超8個贊
首先,我想告訴您Array是引用類型。為什么?我解釋一下這里舉一個例子。
例:
int val = 0; // this is a value type ok
int[] val1 = new int[20] // this is a reference type because space required to store 20 integer value that make array allocated on the heap.
同樣,引用類型可以為null,而值類型不能為null。
值類型存儲在堆棧中,引用類型存儲在堆中
您可以使用out或ref將數(shù)組傳遞給函數(shù)。只有初始化方法不同。
更多..

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超3個贊
數(shù)組本身是引用類型。該數(shù)組的值是由數(shù)組數(shù)據(jù)類型確定的值或引用類型。在您的示例中,數(shù)組是引用類型,而值是值類型。
所有一維數(shù)組都隱式實(shí)現(xiàn)IList<T>
,其中<T>
是數(shù)組的數(shù)據(jù)類型。您可以使用該接口作為方法參數(shù)的數(shù)據(jù)類型。您也可以使用IEnumerable<T>
數(shù)據(jù)類型。在任何一種情況下(甚至即使您只是使用int[]
),也都不需要顯式地將其作為ref
參數(shù)傳遞。
- 3 回答
- 0 關(guān)注
- 1791 瀏覽
添加回答
舉報