如何迭代multi_index

时间:2011-04-10 19:46:55

标签: c++ boost iterator multi-index

这是我的multi_index代码:

struct tag_type {};
typedef boost::multi_index_container<ObjectStorage,
            bmi::indexed_by<
                // Type
                bmi::ordered_non_unique<
                    bmi::tag<tag_type>,
                    bmi::const_mem_fun<ObjectStorage, std::string, &ObjectStorage::getType>
                >
            >
        > ObjectWrapperSet;

现在我想迭代find的结果。

ObjectWrapperSet::index<tag_type>::type &mObjectsByTypeViewer = 
    mObjectsSet.get<tag_type>()

 typedef ObjectWrapperSet::index<tag_type>::type::const_iterator ByTypeIt;
 ByTypeIt it = mObjectsByTypeViewer.find("Some type");

但是如何获得另一个/结束迭代器?

1 个答案:

答案 0 :(得分:1)

你试过这个吗?

ByTypeIt end = mObjectsByTypeViewer.end();