C++中的数据结构是否可以在达到指定大小阈值时自动解除?

Viv*_*V K 2 c++ queue data-structures

我正在寻找一个队列的现有实现,它将构建到指定的大小,然后如果将更多元素排入队列,则在插入新元素之前将最后一个元素解除,从而保持其大小始终<=指定大小.

我知道这很容易实现std::list,但我很想知道在C++中是否已存在这样的数据结构?

Mar*_*ner 5

boost库中有一个"circular_buffer"实现.(有关完整文档,请参阅此处).

引用文档:

circular_buffer特别设计,以提供固定容量存储.当其容量耗尽时,新插入的元素将导致在缓冲区的开头或结尾覆盖元素(取决于使用的插入操作).

我想那就是你要找的......