迭代器的主要作用就是让算法能够不用关心底层数据结构,其底层实际就是一个指针,或者是对 指针进行了封装,比如:vector的迭代器就是原生态指针T* 。因此迭代器...
在vector类学习之前,大家可以回顾下string类的实现,可以发现我们string类的接口有很多,而vector类的接口比string少了很多,string...
list 的本质是双向循环链表,且带有一个"哨兵位头结点"(不存储有效数据),结构如下:
在C++ STL中,stack(栈)是一种重要的容器适配器,遵循后进先出(LIFO)原则。本文将深入探讨stack的两种实现方式:手动内存管理和容器适配器模式。
C语言里面学过的ASCII表——也是编码表,是美国人搞的他们文字编码表(0~127),是(char整型)在内存中的整型值。
1、队列是一种容器适配器,专门用于在FIFO上下文(先进先出)中操作,其中从容器一端插入元 素,另一端提取元素。
前面我们解释过,string类比STL诞生要早几年,STL很多容器和string都具有相似性,但是string的很多接口非常鸡肋,而且数量多——一百多个接口,博...
前面我们已经接触过STL中的部分容器比如:string、vector、list、deque、array、forward_list等,这些容器统称为序列式容器,因...
❄专栏传送门:《C语言》、《数据结构与算法》、C/C++干货分享&学习过程记录、Linux操作系统编程详解、笔试/面试常见算法:从基础到进阶
上篇我们提到STL中list的相关接口及用法,本篇将从list的底层逻辑出发,手动实现一个建议的list容器。
STL(standard template libaray-标准模板库):是C++标准库的重要组成部分,不仅是一个可复用的组件库,而且是一个包罗数据结构与算法的...
《从崩溃到精通:C++ 内存管理避坑指南,详解自定义类型 new/delete 调用构造 / 析构的关键逻辑》
🔥草莓熊Lotso:个人主页 ❄个人专栏: 《C++知识分享》 《Linux 入门到实践:零基础也能懂》 ✨生活是默默的坚持,毅力是永...
表面上,这似乎是一个简单的问题。C++ 的模板系统很灵活,std::vector<std::list<int>> 的确能直接编译通过。 但如果你只停留在这个层...
事实上,这正是 STL 设计思想的一个典型体现—— “不要为你不需要的特性付出代价(You don’t pay for what you don’t use)...
stack官方文档链接:https://cplusplus.com/reference/stack/stack/?kw=stack