Код: Выделить всё
struct SimpleStruct { int a; int b; int c; };
std::vector vs;
Код: Выделить всё
before: {1, 10, 11}, { 5, 100, 111}, {3, 1000, 1111}
after: {1, 10, 11}, {3, 100, 111}, {5, 1000, 1111} //'a' is now sorted, 'b' and 'c' relative position unchanged
Это невероятно неэффективно, поскольку концептуально все, что нам действительно нужно, — это стандартная операция сортировки с пользовательским сравнением и пользовательской заменой.< /p>
Есть ли способ сделать это на C++ с использованием стандартной библиотеки без создания собственного метода сортировки?
Предпочтителен C++20, желательно без использование диапазонов.
Подробнее здесь: https://stackoverflow.com/questions/786 ... ucts-using