#c_sharp #массивы #исключения
При запуске программы
class Program
{
static void Main()
{
string[] listNames = new string[4] { "Личный", "Рабочий", "Семейный", "Список
книг" };
TodoList[] TodoLists = new TodoList[listNames.Length];
for (int i = 0; i < TodoLists.Length; i++)
{
TodoLists[i].name = listNames[i];
}
}
}
class TodoList
{
public string name;
public string[] tasks;
}
получаю ошибку
Unhandled Exception: System.NullReferenceException: Object reference not set to
an instance of an object.
at dz.Program.Main(String[] args) in C:\Users\Yuri\source\repos\dz\dz\Program.cs:line 15
Ответы
Ответ 1
TodoList[] TodoLists = new TodoList[listNames.Length] лишь создаёт массив на listNames.Length элементов, в каждой ячейке которого лежит null. Вам сначала нужно проинициализировать элементы массива, чтобы с ними работать. TodoList[] TodoLists = new TodoList[listNames.Length]; for (int i = 0; i < TodoLists.Length; i++) { TodoLists[i] = new TodoList(); TodoLists[i].name = listNames[i]; }Ответ 2
for (int i = 0; i < TodoLists.Length; i++) { TodoLists[i] = new TodoList() { name = listNames[i] }; }
Комментариев нет:
Отправить комментарий