[英]Null reference c#
我正在编写一个代码,您可以在其中搜索名称,然后会弹出所教的科目等。
但是我不太确定为什么,但我得到Object 参考未设置为 object 错误的实例我缺少我知道的东西,有人可以帮我吗? 我尝试了不同的方法并没有真正起作用......这是我的代码:
public partial class MainWindow : Window
{
Course my = new Course();
public class Course
{
public string[] Name { get; set; }
public string[] Subject { get; set; }
public string[] Hour { get; set; }
public Course(string[] name, string[] subject, string[] hour)
{
this.Name = name;
this.Subject = subject;
this.Hour = hour;
}
}
public MainWindow()
{
InitializeComponent();
my.Name[0] = "Ali";
my.Name[1] = "Sefer";
my.Subject[0] = "INFORMATIKA";
my.Subject[1] = "ENGLISH";
my.Hour[0] = "12";
my.Hour[1] = "22";
}
private void searchButton_Click(object sender, RoutedEventArgs e)
{
Find();
}
private void Find()
{
int index = 0;
string wanted = wantedName.Text;
while (my.Name[index] != wanted && (my.Name[index] != "END"))
{
index++;
}
if (my.Name[index] == wanted)
{
outputLabel.Content = " " + my.Name[index] + " " + my.Subject[index];
}
else
{
outputLabel.Content = "Name not found";
}
}
}
}
您正在使用 arrays 而不初始化它们。 虽然您已经为Course
class 定义了一个构造函数,该构造函数采用 arrays 的值,但您使用的是默认构造函数。 尝试使用 arguments 调用您自己的构造函数
Course my = new Course(new string[2], new string[2], new string[2]);
在您可以为my.Name[0]
类的元素分配值之前,您必须确保my.Name
引用的是分配的数组,这意味着您的元素有 memory 可用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.