C++标准库
文章平均质量分 68
记录C++标准库的学习过程
贝勒里恩
用生命写代码,用灵魂做界面!
展开
-
C++11语言新特性
文章目录1、Template表达式内的空格2、nullptr和std::nullptr_t3、以auto完成类型自动推导4、一致性初始化与初值列1、Template表达式内的空格vector<list<int> >; //旧版vector<list<int>>; //C++11C++11之前要在两个template表达式的闭符之间放一个空格,C++11不作此要求了2、nullptr和std::nullptr_tC++11允许你使用nullp原创 2022-02-15 15:52:34 · 761 阅读 · 0 评论 -
入门了解STL
文章目录一、STL总览1、STL的诞生2、STL的基本概念3、STL六大组件4、容器、算法、迭代器一、STL总览1、STL的诞生长久以来,软件接一直希望建议一种可重复利用的东西;C++的面向对象和泛型编程思想,目的就是复用性的提升;大多数情况下,数据结构和算法都未能有一套标准,导致被迫从事大量重复工作;为了建立数据结构和算法的一套标准,诞生了STL;2、STL的基本概念STL(Standard Template Library,标准模板库);STL从广义上分为:容器(contain原创 2022-02-23 15:01:41 · 182 阅读 · 0 评论 -
STL容器--string
1、string本质:string是C++风格的字符串,而string本质上是一个类;string和char *的区别char *是一个指针,指向了字符串的首地址(数组的第一个元素);string是一个类,类内部封装了char *,管理这个字符串,是一个char *型的容器;特点:string类内部封装了很多成员方法,例如:查找find、拷贝copy、删除delete、替换replace、插入insert等;string管理char *所分配的内存,不用担心复制越界和取值越界等,由类内部进行负原创 2022-02-23 15:04:34 · 640 阅读 · 0 评论 -
STL容器--vector
vector功能:vector数据结构和数组非常相似,也称为单端数组区别:数组是静态空间,而vector是可以动态扩展的动态扩展并不是在原空间之后续接新空间,而是找更大的内存空间,然后讲原数据拷贝到新空间,释放原空间;vector容器的迭代器是支持随机访问的迭代器;成员函数功能说明创建vector容器vector<T> v;默认构造函数,采样模板实现类实现vector(v.begin(), v.end());构造函数,将v[begin(), e原创 2022-02-23 15:36:16 · 91 阅读 · 0 评论 -
STL容器--deque
deque功能双端数组,可以在前后两端进行插入删除操作;deque和vector的区别vector对于头部的插入删除效率低,数据量越大,效率越低;deque相对而言,对头部的插入删除会比vector快;vector访问元素时的速度会比deque快,这和两者内部实现有关;deque内部工作原理deque内部有个中控器,中控器维护每个缓冲区的地址,使得使用deque时像一片连续的内存空间;deque容器的迭代器也是支持随机访问的;成员函数功能说明deque原创 2022-03-01 13:53:11 · 268 阅读 · 0 评论 -
STL容器--stack
概念stack是一种先进后出的数据结构,它只有一个出口;栈中只有顶端的元素才可以被外界使用,因此栈不允许有遍历行为;栈中进入数据,称为:入栈push栈中弹出数据,称为:出栈pop| 成员函数 | 功能说明 || :----------------------------------- | :-------------------- || 创建栈stack |原创 2022-03-01 14:03:47 · 192 阅读 · 0 评论 -
STL容器--quequ
概念queue是一种先进先出的数据结构,它有两个出口队列容器允许从一端新增元素,从另一端移除元素;队列中只有队头和队尾才可以被外界使用,因此队列不允许有遍历行为;队列中进数据,称为:入队push;队列中出数据,称为:出队pop;成员函数功能说明创建队列queue<T> que;queue对象的默认构造形式queue(const queue &que);拷贝构造函数赋值操作queue& operator=(con原创 2022-03-01 14:17:27 · 230 阅读 · 0 评论 -
STL容器--list
链表概念链表是一种物理存储单元上非连续的存储结构,数据元素的逻辑顺序是通过链表中的指针链接实现的;将数据进行链式存储;链表的组成:链表是由一系列结点组成的;结点的组成:结点分为两部分,一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域;STL中的链表是一个双向循环链表;由于链表的存储方式并不是连续的内存空间,所以链表list中的迭代器只支持前移和后移,属于双向迭代器;不支持随意访问;list的优点采用动态存储分配,不会造成内存浪费和溢出;链表执行插入和删除操作十分方便,修原创 2022-03-01 14:48:22 · 590 阅读 · 0 评论