Большое спасибо за ответ.
К>Есть несколько вариантов: К>1) изначально хранить в структуре, поддерживающей несколько порядков в контейнере — bimap, boost::multi_index... К>2) сделать "слепок" контейнера и отсортировать. Вместо копирования значений можно брать указатели/итераторы исходного контейнера.
В первом случае, могли бы наглядно показать как это делается
вот мой класс
class Temp
{
public:
char s[50];
int age;
Temp();
Temp(const Temp &T);
Temp(char t_s[50],int t_age);
~Temp();
};
Как тогда будет выглядеть сама функция сортировки, она же там требует три параметра.
Во втором случае. Я не знакома с понятием слепок контейнера, где бы мне можно было почитать об этом. И я так понимаю во втором случае сортировка будет производиться по итераторам?
Я просто не могу понять сам механизм, ведь данные в ассоциативных контейнерах хранятся в упорядоченном виде по ключу, каким образом они будут упорядычиваться, если применить один из предложенных вариантов.
И какой из вариантов наиболее эффективен?