【C++笔记】C++中vector、stack、deque、list的简易实际使用方法

以下内容仍在更新完善...

Vector

初始化:

 

   vector<int> a(x);                                    定义x个整型元素的初始值不确定的向量

   vector<int> a(x,y);                                 定义x个整型元素的初始值为y的向量

   vector<int> a(b);                                    将b向量的值复制给a

   vector<int> a(b.begin(),b.begin+x);       定义a值为b中第0个到第x个(共x+1个)元素

 

常用函数方法(部分)

    a.assign(b.begin(), b.begin()+x);             b为向量,将b的0~x个元素构成的向量赋给a

    a.assign(x,y);                                          使得a只含x个值为y的元素

    a.back();                                                  返回a的最后一个元素

    a.front();                                                  返回a的第一个元素

    a.clear();                                                 清空vector

    a.empty();                                               判断a是否为空,空则返回ture,不空则返回false

    a.pop_back();                                         删除a向量的最后一个元素

    a.push_back(x);                                     在a的最后一个向量后插入一个值为x的元素

    a.insert(a.begin()+x,y);                          在a的第x个元素(从第0个算起)的位置插入数值y

    a.insert(a.begin()+x,y,z);                        在a的第x个元素(从第0个算起)的位置插入y个数,其值都为z

    a.size();                                                  返回a中元素的个数;

    a.capacity();                                           返回a在内存中总共可以容纳的元素个数

    a.swap(b);                                              b为向量,将a中的元素和b中的元素交换

 

Stack

头文件:

  #include <stack>

初始化:

  stack a;

 

常用函数方法(部分)

  s.top();                   返回栈顶元素

  s.empty();              判定是否为空,空则返回false,非空则返回true

  s.pop();                  删除栈顶元素,并返回该删除值

  s.push(T);              加入一个元素T到stack的栈顶

  s.size();                 返回栈中元素数目

 

 

 

Deque

头文件:

  #include <deque>

初始化:

  deque<double>  a;      定义了一个double型的双端队列a;

 

常用函数方法(部分):

  a.assign(a,b)                                将[a; b)区间中的数据赋值给a

  a.assign(n,x)                                将n个x的拷贝赋值给a

  a.back()                                       返回容器a的最后一个元素的值。如果a为空,则该操作未定义。

  a.begin()                                      传回迭代器中的第一个数据地址。

  a.clear()                                       移除容器中所有数据。

  a.empty()                                     判断容器是否为空。

  a.end()                                         返回一个迭代器,它指向容器a的最后一个元素的下一位置。

  a.erase(pos)                                删除pos位置的数据,传回下一个数据的位置。

  a.erase(x,y)                                 删除[x,y)区间的数据,传回下一个数据的位置。

  a.front()                                        返回容器a的第一个元素的值。如果a为空,则该操作为空。

  a.max_size()                                返回容器a可容纳的最多元素个数。

  a.pop_back()                               删除最后一个数据。

  a.pop_front()                               删除头部数据。

  a.push_back(elem)                     在尾部加入一个数据。

  a.push_front(elem)                     在头部插入一个数据。

  a.size()                                       返回容器中实际数据的个数。

  a.swap(b)                                   交换容器a和b中的所有元素。

  swap(a,b)                                   交换容器a和b中的所有元素。

 

List

初始化:

  list<int> a;                                 创建空list

  list<int> a(5);                             创建含有5个元素的list

  list<int> a(3,2);                          创建含有3个元素的list

  list<int>a(b);                              使用b初始化a
 

常用函数方法(部分):

  a.assign()                                  给list赋值 

  a.back()                                     返回最后一个元素 

  a.begin()                                   返回指向第一个元素的迭代器 

  a.clear()                                    删除所有元素 

  a.empty()                                 如果list是空的则返回true 

  a.end()                                     返回末尾的迭代器 

  a.erase()                                  删除一个元素 

  a.front()                                   返回第一个元素 

  a.get_allocator()                      返回list的配置器 

  a.insert()                                 插入一个元素到list中 

  a.max_size()                          返回list能容纳的最大元素数量 

  a.pop_back()                          删除最后一个元素 

  a.pop_front()                          删除第一个元素 

  a.push_back()                       在list的末尾添加一个元素 

  a.push_front()                       在list的头部添加一个元素 

  a.size()                                 返回list中的元素个数 

  a.swap()                               交换两个list 

 

原文链接: https://www.cnblogs.com/Neko-YG/p/13337410.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    【C++笔记】C++中vector、stack、deque、list的简易实际使用方法

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/367953

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年3月2日 下午6:08
下一篇 2023年3月2日 下午6:08

相关推荐