我昨天有这个工作,但我现在必须改变一些事情ListActiveLogins.ActiveLogins为空,我做了什么?
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
new ListLogin(2);
Console.WriteLine(ListLogin.LoginList.Length);
Console.WriteLine(ListLogin.loginC);
new ListActiveLogins(2);
Console.WriteLine(ListActiveLogins.ActiveLogins.Length);
}
}
public class ListLogin
{
public static int loginC;
public static string[,] LoginList;
public ListLogin(int loginCount)
{
LoginList = new string[loginCount, 3];
loginC = loginCount;
}
public int LoginCount
{
get { return loginC; }
}
public string this[int row, int col]
{
get
{
return LoginList[row, col];
}
set
{
LoginList[row, col] = value;
}
}
}
public class ListActiveLogins
{
public static Process[] ActiveLogins;
public ListActiveLogins(int loginCount)
{
Process[] ActiveLogins = new Process[loginCount];
}
public Process this[int i]
{
get
{
return ActiveLogins[i];
}
set
{
ActiveLogins[i] = value;
}
}
}
答案 0 :(得分:3)
你在构造函数中创建了一个单独的局部变量。
答案 1 :(得分:1)
问题是您在ListActiveLogins
构造函数中声明了一个局部变量。
这应该解决它。
public class ListActiveLogins
{
public static Process[] ActiveLogins;
public ListActiveLogins(int loginCount)
{
ActiveLogins = new Process[loginCount];
}
答案 2 :(得分:1)
Process[] ActiveLogins = new Process[loginCount];
正被重新声明为局部变量。将其更改为:
ActiveLogins = new Process[loginCount];