c++deque赋值操作,大小操作,插入和删除,数据存取,数据排序
作者:互联网
赋值操作函数原型:
deque& operator=(const deque &deq); //重载等号操作符
assign(beg, end); //将[beg, end)区间中的数据拷贝赋值给本身。
assign(n, elem); //将n个elem拷贝赋值给本身。
也是和vector基本一致,=和assign的使用
大小操作函数原型:
deque.empty(); //判断容器是否为空
deque.size(); //返回容器中元素的个数
deque.resize(num); //重新指定容器的长度为num,若容器变长,则以默认值填充新位置。
//如果容器变短,则末尾超出容器长度的元素被删除。
deque.resize(num, elem); //重新指定容器的长度为num,若容器变长,则以elem值填充新位置。
//如果容器变短,则末尾超出容器长度的元素被删除。
和vector基本一致,主要的区别就在于deque没有capacity,而是可以无限的扩展
函数原型:
两端插入操作:
push_back(elem); //在容器尾部添加一个数据
push_front(elem); //在容器头部插入一个数据
pop_back(); //删除容器最后一个数据
pop_front(); //删除容器第一个数据
指定位置操作:
insert(pos,elem); //在pos位置插入一个elem元素的拷贝,返回新数据的位置。
insert(pos,n,elem); //在pos位置插入n个elem数据,无返回值。
insert(pos,beg,end); //在pos位置插入[beg,end)区间的数据,无返回值。
clear(); //清空容器的所有数据
erase(beg,end); //删除[beg,end)区间的数据,返回下一个数据的位置。
erase(pos); //删除pos位置的数据,返回下一个数据的位置。
和vector使用基本一样,主要的区别在于有了头尾操作之分。back代表尾端,也就是最新进入的数据,front代表首端,也就是最早进入的数据
函数原型
at(int idx); //返回索引idx所指的数据
operator[]; //返回索引idx所指的数据
front(); //返回容器中第一个数据元素
back(); //返回容器中最后一个数据元素
和vector的使用基本一样,主要区别在于能够返回头尾元素
sort(iterator beg, iterator end) //对beg和end区间内元素进行排序
deque中的数据排序,注意输入的是迭代器,这个算法在algorithm头文件中,默认是升序排序的
对于所有支持随机访问的迭代器的容器,都可以使用sort
标签:容器,deque,elem,c++,pos,beg,操作,数据 来源: https://www.cnblogs.com/uestc-du/p/16246877.html