C++学习笔记之STL标准库(八)queue容器适配器

容器适配器并没有直接维护被控序列,而是通过它里面存储的底层容器对象来实现所有的功能。

queue类允许在底层数据结构的末尾插入元素,也允许从前面插入元素(先入先出)。

包含头文件 #include<queue>  声明命名空间 using namespace std;

常见的queue操作:

  1.void push(const T& val); //在队列末尾插入元素(通过调用底层容器的push_back函数实现)

  2.void pop(); //在队列前面删除元素(通过调用底层容器的pop_back函数实现)

  3.value_type& front(); //获取队列中第一个元素的引用(通过调用底层容器的front函数实现)

  4.value_type& back(); //获取队列最后一个元素(通过调用底层容器的back函数实现)

  5.bool empty() const; //判断队列是否为空(通过调用底层容器的empty函数实现)

  6.size_type size() const; //获取队列元素数量(通过调用底层容器的size函数实现)

  为了获得最佳性能,应使用deque类作为queue的底层容器

  如: queue<int> values; 
     values.push(1); 
     values.push(2); 
     values.push(3); 
     while (!values.empty()) 
     { 
        cout<<"pop value: "<<values.front()<<endl; 
        values.pop();
     }

  程序输出:

猜你喜欢

转载自www.cnblogs.com/jason-20160301/p/8977736.html