从向量中删除以添加另一个元素

时间:2015-02-02 18:20:37

标签: c++ vector

是否有方法检查向量(必须不超过n个元素)是否已满并删除第一个元素以添加另一个元素?

1 个答案:

答案 0 :(得分:0)

你想要的是std::deque。 Deque支持从两个方向(即前后)弹出和推动。 (正如评论中已经提到的那样)

void my_push(std::deque<int>& sample, int element)
{
    if(sample.size() >= MAX_SIZE)
    {
        sample.pop_front(); // pop off the front element.
        sample.push_front(element);
    }
    else {
         // do whatever you want to...
    }
}