Страницы

Поиск по вопросам

вторник, 16 апреля 2019 г.

Ошибка при обращении к элементу массива

При запуске программы
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
epos\dz\dz\Program.cs:line 15


Ответ

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]; }

Комментариев нет:

Отправить комментарий