Re[2]: Сравнение vector<shared_ptr>
От: Alexey F  
Дата: 29.12.11 11:29
Оценка: +2
Здравствуйте, Сыроежка, Вы писали:

AP>>
...
AP>>    bool equal = v1 == v2; // здесь хочу получить true вместо false
...
AP>>

С>Вы можете воспользоваться стандартным алгоритмом std::lexicographical_compare с предикатом.
Эмм...

std::lexicographical_compare

Lexicographical less-than comparison
Returns true if range [first1,last1) compares lexicographically less than the range [first2,last2).

Если и говорить про алгоритмы, то нужен std::equal со своим предикатом, но только с проверкой длины векторов:
bool equal = v1.size() == v2.size() && std::equal( v1.begin(), v1.end(), v2.begin(), predicate );

Не думаю, что топик-стартеру понравится.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.