Если у меня есть класс, который я хочу, чтобы сортировать (т.е. поддерживать менее концепцию), и он имеет несколько элементов данных, так что мне нужно делать лексикографическое упорядочение, тогда мне нужно что-то вроде этого:
struct MyData {
string surname;
string forename;
bool operator<(const MyData& other) const {
return surname < other.surname || (surname==other.surname && forename < other.forename); }
};
Это становится довольно неуправляемым для чего-либо с более чем двумя членами данных. Есть ли более простые способы его достижения? Элементами данных могут быть любые классы Comparable.