【发布时间】:2014-01-09 11:25:40
【问题描述】:
我有一个 multi_index 容器。 Chan::Ptr 是一个指向对象的 shared_pointer。 容器有两个带有对象函数的索引。
typedef multi_index_container<
Chan::Ptr,
indexed_by<
ordered_unique<const_mem_fun<Chan,string,&Chan::Channel> >,
ordered_non_unique<const_mem_fun<Chan,string,&Chan::KulsoSzam> > >
> ChanPtrLista;
直到我只将对象 push_back 到容器中,在容器中的所有搜索都是成功的。
当我修改对象中的值(例如:Chan::Channel 更改)时,索引将被破坏。用索引列出容器,返回错误的顺序。但是查找功能不再起作用。
如何重新索引容器? (“rearragne”方法对索引不做任何事情)。
【问题讨论】:
标签: c++ boost boost-multi-index