“新”是创建空的数组,而不是空值

“新”是创建空的数组,而不是空值

问题描述:

数组的我有一个类“新”是创建空的数组,而不是空值

namespace MyClassNameSpace { 
    public struct a { 
     public float Time; 
     public float High; 
    } 
    public class SoC { 
     public string Name; 
     public a[] Stock =new a[9]; 
    } 

}

而在Form1中创建的SoC的数组:

public static SoC[] b = new SoC[5]; 
private void Form1_KeyUp(object sender, KeyEventArgs e) { 
    b[1].Name = "ABC" 
} 

问题是,b是一个空数组,而不是一个数组empty(归零)SoC ...我该如何改变?

您正在创建参考变量数组参考(类)类型。该声明,

public static SoC[] b = new SoC[5]; 

创建参考变量,其初始值是零。

这种方式,你可以创建对象:

for(int i=0;i<b.Length;i++) { 
    b[i]=new SoC(); 
} 
+0

他们将静态? – user1427972 2012-07-15 06:21:38

为阵实际上并没有创建对象分配空间。您需要循环并调用每个项目的构造函数。