写一写,记录自己的点滴,以免忘记了哈哈。
deque资料应该很多,这里不多所了,直接一点上程序吧!
#include <iostream>
#include <deque>
#include <vector>
#include <algorithm>//用于distance(deque模板,deque迭代器)
using namespace std;
/*
STL deque 是一个动态数组,与vector类似
可在开头与末尾插入、删除数据
*/
void main() {
//定义一个deque
deque <int> a;
//从末尾添加
a.push_back(3);
a.push_back(4);
a.push_back(5);
//从开头添加
a.push_front(2);
a.push_front(1);
a.push_front(0);
//打印输出
for (size_t nCount = 0; nCount < a.size(); ++nCount) {
cout << "a[" << nCount << "] = ";
cout << a[nCount] << endl;
}
//删除数据
a.pop_back();//删除末尾数据
a.pop_front();//删除起始数据
cout << "---------------------\n";
//迭代器打印数据 deque 有自己的迭代器
int i = 0;
for (deque <int> ::iterator iter = a.begin(); iter != a.end(); iter++) {
//cout << "a[" << i++ << "] = ";//自己的方法填写下标,可用
//利用include <algorithm> 头文件
size_t idex = distance(a.begin(),iter);
cout << "a[" << idex << "] = ";
cout << *iter << endl;
}
system("pause");
}