c#中未分配的局部变量出现问题

Mag*_*dud 1 c#

好吧,我对于提出这个问题感到很惭愧,但是我无法理解为什么c#中的这段代码不能在vs2010 express中编译:

string[] value;
for (int i = 0; i < 3; i++)
        {
            value[i] = "";
        }
Run Code Online (Sandbox Code Playgroud)

为什么它说它未分配?

Chr*_*ard 5

您需要先分配数组,然后再分配数组中的项目.

 string[] value = new string[3];
Run Code Online (Sandbox Code Playgroud)

如果你想动态添加项目,并根据需要调整大小,你可能会更好地使用通用列表,例如.

var values = new List<string>();
for(int i = 0; i < 3; i++)
{
    values.Add("");   // or values.Add(String.Empty);
}
Run Code Online (Sandbox Code Playgroud)