gpt4 book ai didi

C++ boost - 是否有一个容器像队列一样工作,可以直接访问 key ?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:36:54 25 4
gpt4 key购买 nike

我想知道一个类似队列的容器,但它具有 key 访问权限,就像 map 一样。我的目标很简单:我想要一个 FIFO 队列,但是,如果我插入一个元素并且具有给定键的元素已经在队列中,我希望它的新元素 replaced 已经存在的元素队列。例如,按插入时间排序的 map 就可以了。

如果没有这样的容器,你认为可以同时使用 queue 和 map 来实现吗?

最佳答案

Boost multi-index提供了这种容器。

要自己实现它,我可能会选择一个 map,其值由一个链表节点和一个有效负载组成。列表节点可以手动滚动,也可以是 Boost intrusive .

请注意,queue 适配器的要点是隐藏了 Sequence 的大部分接口(interface),但你想弄乱它隐藏的细节。所以我认为您的目标应该是重现 queue 的界面(使用您为 push 更改的语义稍作修改)而不是实际使用它。

关于C++ boost - 是否有一个容器像队列一样工作,可以直接访问 key ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4372154/

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