欢迎光临
我们一直在努力

C#中的数组和C++中数组的区别-.NET教程,C#语言

建站超值云服务器,限时71元/月
c#中数组是引用类型,c#定义整型数组方式是:int [] intarray = {1,2,3};或int [] intarray = new int[10];而c++中定义整型数组的方式是:int intarray[] = {1,2,3};或int * intarray = new int[10];c#中的数组可以是一维的也可以是多维的,同样也支持矩阵和参差不齐的数组。注意:定义多维数组(矩阵)的方式是[,,]而定义多维“参差矩阵”的方式是[][]。另外,new关键字的使用并不一定表示对象是动态分配的(进入栈中)。
下面是c#中(一维)多维数组常见的定义方式:
int []a1;   //定义一维数组
int [,]a2;  //定义二维数组
int [,,]a3; //定义三维数组
int []a1 = new int [10];       //定义一维数组深度
int [,]a2 = new int [10,20];     //定义二维数组深度
int [,,]a3 = new int [10,20,30]; //定义三位数组深度
int []a1 = new int []{1,2,3};       //初始化
int [,]a2 = new int [,]{{1,2,3},{4,5,6}};
还可以定义“参差不齐”的数组:
int [][]var = new int [3][];
var[0] = new int[]{1,2,3};
var[1] = new int[]{1,2,3,4,5,6};
var[2] = new int[]{1,2,3,4,5,6,7,8,9};
注意,int [,]a和int [][]a的区别:前者定义了一个二维固定数组,后者定义了一个二维可变数组。只是它们都还没被分配空间和初始化。int [][]var = new int[3][4];是错误的。
以下错误:
class test
{
static void f(int []arr){}
static void main()
{
f({1,2,3});//出错!{1,2,3}并非有效表达式。
}
}
以下正确:
class test
{
statci void f(int []arr){}
static void main()
{
f(new int []{1,2,3});
}
}
赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » C#中的数组和C++中数组的区别-.NET教程,C#语言
分享到: 更多 (0)

相关推荐

  • 暂无文章