Структура и класс C++

Всем привет!

Заранее прошу прощения за глупые вопросы, я только изучаю программирование на С++.

В институте дали лабораторную. Краткая суть задачи: создать структуру (название экзамена, дата экзамена, фамилия преподавателя, оценки), а также написать функции для работы с массивом структур (например, очистить одну структуру или найти пустую, отсортировать структуры по возрастанию/убыванию какого-то поля и т.д.).

Я все реализовала (создала структуру, массив структур и просто функции, которые работают с массивом структур). Но мне поставили 2 с комментарием: “В коде должна быть реализована отдельно структура данных и отдельно класс Database, в котором уже нужные функции и методы.”

То есть мы должны манипулировать массивом структур как-то через МЕТОДЫ КЛАССА, а не просто ФУНКЦИИ.

Подскажите, как это реализовать? Я совсем не понимаю, нужно сделать массив структур массивом объектов? У меня просто в голове все это не связывается.

Если можете, простыми словами, ООП я понимаю, наверно, очень плохо, но готова разобраться, когда буду понимать, что вообще разбирать…


Если кому-нибудь не лень читать, то вот полное задание...

Разработать программу ведения и использование базы данных с использованием структурных переменных и сохранением данных в плоском (без использования форматирования) файле. Для этого создать шаблон структуры, создать набор функций для работы с массивом структурных переменных. В структурной переменной предусмотреть способ отметки ее как не содержащей данных (т.е. "пустой"). Разработать функции в соответствии с ниже приводимым перечнем:

  1. “Очистка” структурных переменных (отметка переменной как не содержащей данных). Функция должна получать в качестве параметра индекс массива.
  2. Поиск свободной структурной переменной. Функция должна возвращать индекс первого свободного элемента в массиве структур.
  3. Ввод элементов (полей) структуры с клавиатуры. В качестве параметра в функцию должен передаваться индекс элемента массива.
  4. Вывод элементов (полей) структуры на монитор. В функцию должен передаваться индекс элемента массива.
  5. Вывод на экран всех заполненных элементов массива структур.
  6. Поиск в массиве структур элемента с заданным значением поля или с наиболее близким к нему по значению. Предусмотреть возможность задания одного числового значения и одного строкового.
  7. Поиск в массиве структуры с минимальным значением заданного поля. Поле должно передаваться в поле числом, обозначающим номер поля в структуре.
  8. Сортировка массива структур в порядке возрастания заданного поля (при сортировке можно использовать тот факт, что в Си++ разрешается присваивание структурированных переменных);
  9. Сортировка массива структур в порядке убывания заданного поля (при сортировке можно использовать тот факт, что в Си++ разрешается присваивание структурированных переменных);
  10. Функция чтения файла с содержимым базы данных (массива структурных элементов).
  11. Функция записи в файл содержимого базы данных (массива структурных элементов). Функции должны работать с массивом структурных переменных или с отдельной структурной переменной через указатели, а также при необходимости возвращать указатель на структурную переменную или массив структурных переменных._

Ответы (0 шт):