Если ваш вопрос заключается в том, как инициализировать массив, то ответ будет таким:
Student class_list[2] = {
{{"John", "Doe"}, {8, "000-555-000"}, {1, 2, 3}},
{{"Jane", "Doe"}, {10, "000-555-001"}, {10, 8, 10}},
};
Причины, по которым он работает так, в том, что ваши классы являются агрегатами, поэтому вы можете использовать агрегатная инициализация .
Ну, я инициализировал массив из 2 элементов.Вы можете увидеть синтаксис.
Некоторые пункты для вашей программы.Путь typedef struct
- это идиома.В C ++ вам это не нужно, поэтому, пожалуйста, измените все определения на:
struct Name
{
char fname[15];
char lname[15];
};
Также вы должны использовать std::array
вместо массивов C:
std::array<Student, 3> class_list {{
{{"John", "Doe"}, {8, "000-555-000"}, {1, 2, 3}},
{{"Jane", "Doe"}, {10, "000-555-001"}, {10, 8, 10}},
}};