gpt4 book ai didi

c++ - boost::multi_index 和 std::map find() 和 erase()

转载 作者:太空宇宙 更新时间:2023-11-04 12:14:36 24 4
gpt4 key购买 nike

可以包装 boost::multi_index find()erase() 方法以获得类似的 std::map find()erase() 方法?

[来自评论:] 我有这个方法:

typename container1::const_iterator find(const K& key) const
{
//typedef typename nth_index<container1,0>::type it; c.get<1>().find(key);
return (???);
}

我应该在返回声明中写什么??

最佳答案

如果我理解你的问题,你想返回一个索引为 0 的迭代器,而查找是用索引 1 完成的,对吗?使用 iterator projection :

template<typename Container, typename Key>
typename Container::const_iterator find(const Container& c, const Key& key)
{
return c.project<0>(c.get<1>().find(key));
}

关于c++ - boost::multi_index 和 std::map find() 和 erase(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8369271/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com