У меня есть класс, конструктор выглядит следующим образом:C++ как удалить дубликаты из вектора типа класса?
myclass(int=0,string="",int=0,string="",int=0,int=0,
int=0,int=0,string="",int=0,int=0);
и вектор с элементами этого типа
vector<myclass>myvect;
вектором, отсортированные и я пытаюсь удалить дубликаты и это не работает:
std::vector<myclass>::iterator it;
it=std::unique (myvect.begin(), myvect.end());
myvect.resize(std::distance(myvect.begin(),it));
Я получаю эту ошибку
:algorithm(1862): error C2678: binary '==' :
no operator found which takes a left-hand operand
of type 'myclass' (or there is no acceptable conversion)
любая идея почему? Есть ли способ удалить дубликаты из этого вектора?
Реализовать 'оператор ==' 'для myclass'? – Morwenn
Простым решением является реализация собственного оператора равенства. –