Сортировка векторов через функцию sort

Рейтинг: 0Ответов: 0Опубликовано: 08.05.2023

У меня вопрос связанный с сортировкой.

У меня есть 2 структуры:

struct Exam {
    string subject;
    int numQuestions;
    vector<int> correctAnswers;
};

struct Student {
    int id;
    string name;
    vector<Exam> exams;
    double averageGrade;
};

И объявляю их через вектора

vector<Exam> exams;
vector<Student> students;

Прошу заметить что в структуре Student дополнительно объявлен массив Exam.

В чём сам вопрос

Когда я сделаю сортировку

sort(exams.begin(), exams.end(),correctSort);

все нормально но если я делаю сортировку в

 for (const auto& student : students)
    {
        sort(student.exams.begin(), student.exams.end(),correctSort);
    }

она сыпется, почему так и как это исправить

bool correctSort(const Exam& a, const Exam& b) {
    return a.subject < b.subject;
}

Ответы

Ответов пока нет.