int []是引用类型还是值类型?

我知道一个int是一个值类型,但是什么是值类型数组?参考类型?值类型?我想将数组传递给函数以检查某些内容。我应该只传递数组,因为它只会传递它的引用,还是应该将它作为ref传递?



Helenr
浏览 1753回答 3
3回答

MMMHUHU

首先,我想告诉您Array是引用类型。为什么?我解释一下这里举一个例子。例:int val = 0; // this is a value type okint[] 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将数组传递给函数。只有初始化方法不同。更多..

米脂

数组本身是引用类型。该数组的值是由数组数据类型确定的值或引用类型。在您的示例中,数组是引用类型,而值是值类型。所有一维数组都隐式实现IList<T>,其中<T>是数组的数据类型。您可以使用该接口作为方法参数的数据类型。您也可以使用IEnumerable<T>数据类型。在任何一种情况下(甚至即使您只是使用int[]),也都不需要显式地将其作为ref参数传递。
打开App,查看更多内容
随时随地看视频慕课网APP