在学习C#时,我有以下疑问。由于数组在C#中声明时是引用类型,我认为它们一直是在堆上分配的。所以当我们按照以下方式声明数组时:
int[] arr1 = {1,2,3};
int[] arr2 = new int[3] { 1, 2, 3 };
它们之间有什么区别吗?
我们可以像在 C++ 中那样声明数组int arr[100];
吗?(不初始化也不使用 new 关键字)然后再给它们赋值。
它的数组初始化语法
int[] arr1 = {1,2,3};
int[] arr2 = new int[3] { 1, 2, 3 };
int[] arr2 = new int[] { 1, 2, 3 };
他们是一样的。在这种情况下...
int[] arr2 = new int[3] { 1, 2, 3 };
因为您在必须匹配数量之后声明了 size[3]。
检查本教程http://msdn.microsoft.com/en-us/library/aa288453(v=vs.71).aspx
编辑:
int[] MyArray = new int[100];
int[] MyOtherArray = MyArray;
这就是你可以对第二个问题做的事情