Я пытаюсь отсортировать вектор, содержащий объекты, которые не являются конструктивными или конструктивными по умолчанию (но являются конструктивными), но я получаю ошибки в том, что компилятор не может найти допустимую функцию для swap
. Я думал, что достаточно иметь конструктор движений. Что мне здесь не хватает?
class MyType {
public:
MyType(bool a) {}
MyType(const MyType& that) = delete;
MyType(MyType&& that) = default;
};
int main(void) {
vector<MyType> v;
v.emplace_back(true);
sort(v.begin(), v.end(), [](MyType const& l, MyType const& r) {
return true;
});
}