#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] }; }
Комментариев нет:
Отправить комментарий