日期:2014-05-17  浏览次数:20868 次

动态类数组
public class TempData
{
   public float[ , , ] bytDataRecv = null;

 }

private void Form1_Load(object sender, EventArgs e)
{
   TempData[] tmp1 = new TempData[512];
   tmp1[1].bytDataRecv[1, 1, 1] = 55;
}

运行到tmp1[1].bytDataRecv[1, 1, 1] = 55报错,
不知道如何初始化,TempData是否需要构造函数,如果有构造函数,主程序如何new。
class object

------解决方案--------------------
 bytDataRecv 没有初始化,你只是创建了 类的实例,但是类里面的数组没有初始化
循环tmp1数组,为每个tmp1元素的  bytDataRecv 初始化
------解决方案--------------------
 tmp1[1].bytDataRecv=new int[10,10,10];
------解决方案--------------------
public class TempData
{
   public float[ , , ] bytDataRecv = null;

 }

private void Form1_Load(object sender, EventArgs e)
{
   TempData[] tmp1 = new TempData[512];
   tmp1[1]=new TempData();
   tmp1[1].bytDataRecv=new float[10,10,10];

   tmp1[1].bytDataRecv[1, 1, 1] = 55;
}