返回列表 回复 发帖

数组赋值

问题1:例10-24,请问以下代码:
      int [,] array2D=new int [100000,1000000];
            long length=array2D .LongLength
为什么不能显示出结果?

问题2:例10-29用System.Array类的SetValue()方法赋值时
      int [,] array2D=new int [10,100];
            array2D.SetValue (0,1) = 2008;
            却显示错误,为什么?
(1)Length属性返回int值,而LongLength属性返回long值。如果数组包含的元素个数超出了32位int值的取值范围,就需要使用LongLength属性,来获得元素个数.
dorient 发表于 2009-11-18 21:30
谢谢为我解答问题!
但还是不太明白,我第二句就是用的LongLength属性啊,但为什么编译的时候还是出错?
是不是“long length=array2D .LongLength” 缺少分号?
dorient 发表于 2009-11-20 08:44
不是,以上没加分号是我的手误
错误提示信息在 int [,] array2D=new int [100000,1000000]; 句上
If you are creating an array, make sure the size is correct.
  Be sure you have enough memory to allocate for internal purposes and new managed objects.

是我的机器内存不够大的缘故?
返回列表