|
Boost Users : |
From: Joaquin M López Muñoz (joaquinlopezmunoz_at_[hidden])
Date: 2020-03-13 17:00:45
El 12/03/2020 a las 21:53, MM via Boost-users escribió:
> Hello
> I want a collection to store a relationship N to M like so:
>
> Item of type AÂ Â Â Â Â Â Â Â Â Item of type B
> A1Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â B1,B2,B3
> A2Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â B4
> A3Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â B1
>
> and I would like a convenient way to get from a A instance to the list
> of B instances, and vice versa,
> from a given B instance to the list of A instances.
>
> At runtime, the A objects are created first, then a list of B objects
> is created.
> Later, B objects get modified asynchronously and that modification
> need to update the relevant
> A instances
>
> what container to use?
>
> boost::bimap< unordered_set<A*> , unordered_set<B*> >
As the relationship is N:M, you'll want something like
 boost::bimap< unordered_multiset_of<A*> , unordered_multiset_of<B*> >
JoaquÃn M López Muñoz
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net