Boost logo

Boost Users :

From: Jeffrey Holle (jeffreyholle_at_[hidden])
Date: 2007-09-24 18:34:04


> inline void
> Positioner::updateX(XYIterator iter,int x)
> {
> // note the get<1>() bit
> m_c.get<1>().modify(
> iter,(&ll::_1)->*&Positioner::entry::m_x=x);
> }
Yes, this work fine, thanks!

> PS: I posted an answer to some previous question of yours that
> you haven't confirmed yet:
> http://lists.boost.org/boost-users/2007/09/30804.php
> Is it all solved?

I've got two multi_index containers working fine now.
I had a bit of trouble with the first one, which was involved in a
fairly complex algorithm that was trouble-some to debug.
My impressions from that experience is that:
   A. The iterator returned from erase was pointed somewhere that was
obviously not right. I was erasing the 3rd element of a container
holding 5 elements and the std::distance reported the correct results,
but everything in the referenced element was zero.

   B. The iterators of the multi_index container become invalid after
any modifications to the container. This was my biggest source of
trouble...

In general, I really like your container. The fact that it allows the
swapping of key values was particularly useful.


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