idcode 为空或者stu[x].Code为空
解决方案 »
- datatable 循环添加新行问题
- 新出炉的菜鸟大送分啦,大家过来看啊,先到先得啊^_^
- sql存储过程问题?
- .net 有什么号的架构吗?
- 水晶报表问题(新手请教)
- VS2008 web测试
- 用谁用过teechart控件,用C#做..高分高酬劳求帮忙..
- 请问当一个文件夹的安全属性中“写入”的属性改为“拒绝”,如何能判断出来!!急!!
- C# listview 的问题
- VB.NET POST图片到 asp.net页面,是否用request.form["file"]取,如果是为什么会乱码~如果是编码问题那又怎么解决呢???现附上vb.net源码,,,帅哥哥们帮一下小弟吧.....
- 用户输入运算符
- 文本框里的值
{
student[] stu;
int i = 0;
public Form1()
{
InitializeComponent();
}
private void init_Click(object sender, EventArgs e)
{
stu = new student[Convert.ToInt32(textBox1.Text)];
MessageBox.Show("succeed");
}
//add information method
private void btnyes_Click(object sender, EventArgs e)
{
string chose = "";
if (radioButton1.Checked == true)
{
chose += "男";
}
if (radioButton2.Checked == true)
{
chose += "女";
}
int popctrl = Convert.ToInt32(textBox1.Text);
if (i <popctrl)
{
stu = new student[Convert.ToInt32(textBox1.Text)];
stu[i] = new student();
stu[i].Code = txtcode.Text;
stu[i].Name = txtname.Text;
stu[i].Sex = chose;
stu[i].Age = Convert.ToInt32(cobage.Text);
stu[i].Grade = txtgrade.Text;
stu[i].Score = Convert.ToInt32(txtscore.Text);
Empty();
Listviewer();
i++;
}
else
{
MessageBox.Show("Negative");
}
}这是那个数组定义以及那个添加方法
foreach(T t in lst)
{}
数组单步跟踪看null
同意。看看在哪定义的
if (i <popctrl)
{
stu = new student[Convert.ToInt32(textBox1.Text)];
stu[i] = new student();
stu[i].Code = txtcode.Text;
stu[i].Name = txtname.Text;
stu[i].Sex = chose;
stu[i].Age = Convert.ToInt32(cobage.Text);
stu[i].Grade = txtgrade.Text;
stu[i].Score = Convert.ToInt32(txtscore.Text);
Empty();
Listviewer();
i++;
}
应该是while吧,所以i最后为1,而你之后应用stu[x].Code时,stu[1]是没有实例化的
你没所有初始化
stu[i] = new student();
为什么还要new一次?????????????
{
stu = new student[Convert.ToInt32(textBox1.Text)];
MessageBox.Show("succeed");
}
你在这里已经NEW过了,后面就不用再NEW了,你这里只是一个数组NEW了一个,而数组里面的对像是一个类,而在使用这个类的时候没有NEW,也就是相当于一个class 里面有一个public 字段, 而你只是用这个类
如: class c
{
public int code;
...}c c1;
c1.code ;//这里当然会报错