I have the following problem using a multi index container which is uniquely
ordered on a pair .
Each time i want to find every pair i that contains a specific integer. The
other value of the pair is irrelevant.
An example:
<0,1>
<0,2>
<0,3>
<1,2>
<1,3>
<2,3>
and I want to find all the pairs with the value 0 as the first integer.
function find() wants the whole pair
and iterator find(const CompatibleKey& x,const CompatibleCompare&
comp)const; doesn't help ,too.
*
**Here is the declaration of my container**
typedef pair clusterset;
struct cluster {
clusterset pair;
float distance;
cluster(clusterset pair, float distance) :
pair(pair), distance(distance) {}
};
struct cluster_pair{};
struct cluster_distance{};
typedef multi_index_container<
cluster,
indexed_by<
ordered_unique<
tag, BOOST_MULTI_INDEX_MEMBER(cluster, clusterset,
pair)>,
ordered_non_unique<
tag, BOOST_MULTI_INDEX_MEMBER(cluster, float,
distance)> >
cluster_index;*
Any ideas?