gpt4 book ai didi

boost - 从 Boost MultiIndex 中删除

转载 作者:行者123 更新时间:2023-12-05 01:24:31 33 4
gpt4 key购买 nike

我有一个 boost 多索引结构,它将 boost::shared_ptr 保持在 A 类的实例中。
当我使用其中一个索引的“查找”函数时,我得到一个迭代器“it”,我可以从中通过 A* a = it->get(); 取回实际指针.如何删除 a从多索引知道erase多索引结构的函数采用迭代器,而不是指针或 boost::shared_ptr?事情是在我想要删除对象的程序点上,我不再有我的初始迭代器,只有实际的指针。

谢谢

最佳答案

没有“多索引结构的erase功能”这样的东西。请注意 erase是索引的成员函数,其签名可能因索引类型而异。

特别是,有序和散列索引具有 following overloadserase :

iterator  erase(iterator position);
size_type erase(const key_type& x);
iterator erase(iterator first,iterator last);

IE。如果 shared_ptr是key,你绝对可以传给 erase功能。
当然也可以调用 find首先,获取迭代器并将其传递给 erase .

关于boost - 从 Boost MultiIndex 中删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11558399/

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