C#'使用未分配的本地变量'

时间:2016-05-03 22:15:19

标签: c#

我遇到了C#的问题,我收到了错误

  

使用未分配的局部变量

我不确定为什么会收到此错误,因为在阅读有关此问题的其他问题时,人们在If语句中声明变量时会遇到问题。

我不知道这是否是一个非常基本的错误,因为我是C#的新手,但是我们将不胜感激。

这是我的代码:

private void remProj_Click(object sender, EventArgs e) 
{
    string[] CurrentProjects;
    for (int i = 0; i < ProjectList.Items.Count; i++) 
    {
        CurrentProjects[i] = ProjectList.Items[i].ToString();
        MessageBox.Show(CurrentProjects[i]);
    }
}

我收到关于使用&#39; CurrentProjects&#39;这一行的错误:

CurrentProjects[i] = ProjectList.Items[i].ToString();

3 个答案:

答案 0 :(得分:0)

错误消息指出变量CurrentProjects尚未初始化。你可以通过初始化变量来摆脱这个问题。对于此特定方案,初始化的最佳选项是ProjectList.Items.Count。所以改变声明如下:

 string[] CurrentProjects= new string[ProjectList.Items.Count];

答案 1 :(得分:0)

您必须先将数组初始化为一个大小:

string[] CurrentProjects = new string[ProjectList.Items.Count];

答案 2 :(得分:-1)

我最近也注意到,如果没有为其赋值或某些内容,就无法创建变量。它是c#的更新,所以基本上任何时候创建一个变量,你必须为它赋值..

所以

string[] CurrentProjects; 

应该是

string[] CurrentProjects = new string[ProjectList.Items.Count];