Сравнение объектов разных типов в stl
От: Chelovek_  
Дата: 25.11.05 17:58
Оценка:
У меня в std::vector<A> хранятся отсортированные структуры А (для А определено отношение порядка). А еще у нас есть структура В, для которой определена операция сравнения со структурами А ("дружащая" с отношением порядка в А). Могу ли я натравливать std::equal_range на все это дело примерно следующим образом:


std::vector<A> index;
...
B b;
struct A_B_Less{
inline bool operator()(const A& a, const B& b) {...}
inline bool operator()(const B& b, const A& a) {...}
};

std::equal_range(index.begin(), index.end(), b, A_B_Less);


Боюсь, что не могу — но может кто что посоветует, как мне по упорядоченному списку одних объектов быстро искать equal_range для другого объекта ?
... всё это коряво, конечно, но по другому не хочу делать, чтобы размер этих А не увеличивать лишними полями, а то их в списке больно много.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.