c#创建结构数组的问题
代码如下:
struct CIRCLE{
......
}
....
CIRCLE[] c = new CIRCLE[];
编译失败,报错:数组创建必须有数组大小或数组初始值设定项
========================
问题:
1.理论上说,.net默认会为结构建立一个无参数的构造函数,为什么仍提示必须设置初始值?
2.如果要对结构数组赋值,那么应该如何赋值呢?
------解决方案--------------------结构数组也是数组,是数组就必须初始化,结构可以随意定置
------解决方案--------------------CIRCLE[] c = new CIRCLE[]; //语法错误
CIRCLE[] c;
或者
CIRCLE[] c = new CIRCLE[数据大小];
------解决方案--------------------CIRCLE[] c;
...
c.name = new 你的name的类型 [k+1];
for (int i=0; i <=k; i++)
{
c.name[i] = ...;
}
------解决方案--------------------用arraylist
------解决方案--------------------这并不是结构数组构造函数的事,而是声明数组的问题。
声明数组new 的时候必须,指明数组大小!
你出错就是在这了。