Очередь приоритетов C++ с двумя компараторами

Возможно ли в C++ реализовать приоритетную очередь с двумя компараторами?

Вот пример:

struct Task
{
  int r,p,q;
  int task_number;
};


struct Greater_r
{
  bool operator()(const Task& task_a, const Task& task_b) const
  {
      return task_a.r >= task_b.r;
  }
};

Я хотел бы отсортировать не только по "r", но и по "task_number", потому что, когда для двух задач r имеет одинаковое значение, приоритетная очередь будет сортировать его случайным образом.

0 ответов

Другие вопросы по тегам