STL
文章平均质量分 82
STL容器以及配置器等知识
子亦半截诗
这个作者很懒,什么都没留下…
展开
-
【C++精华铺】13.STL stack 和 STL queue 模拟实现
STL (Standard Template Library)是C++标准库提供的一套模板类和算法的集合,其中包含了许多常用的数据结构和算法,方便程序员使用和扩展。STL中的stack和queue是两种常用的容器适配器,可以通过使用不同的容器作为底层实现来提供不同的行为。STL提供的stack和queue适配器默认使用deque(双端队列)作为底层容器,也可以使用vector或list作为底层容器,根据实际需求选择不同的底层容器以满足性能和功能要求。这里我们用vector和queue作为底层容器。原创 2024-07-12 21:34:54 · 529 阅读 · 3 评论 -
【C++精华铺】12.STL list模拟实现
STL (Standard Template Library)是C++标准库中的一个重要组件,提供了许多通用的数据结构和算法。其中,STL list是一种带头双向链表容器,可以存储任意类型的元素。list的特点包括:双向性:list中的元素可以根据需要在前向和后向方向上进行遍历和访问。动态大小:list的大小可以根据需要动态增长和收缩,不像数组需要预先定义大小。高效的插入和删除:在list中插入或删除元素的操作非常高效,时间复杂度为常数时间。原创 2024-07-12 21:23:48 · 1593 阅读 · 4 评论 -
【C++精华铺】11.STL vector模拟实现
STL(Standard Template Library)是C++的标准库之一,提供了一系列的模板类和函数,用于实现常用的数据结构和算法。其中,STL的vector是一个动态数组,可以根据需要自动调整大小。vector可以存储任意类型的对象,并且可以在尾部插入和删除元素,还可以随机访问和修改任意位置的元素。它的实现使用了动态内存分配,因此在插入和删除元素时,可能会触发内存重新分配和数据拷贝,导致效率降低。vector提供了一系列的成员函数和操作符,用于操作和访问其中的元素。原创 2024-07-11 00:27:46 · 1012 阅读 · 3 评论 -
【C++精华铺】10.STL string模拟实现
STL(标准模板库)是一个C++标准库,其中包括一些通用的算法、容器和函数对象。STL的容器是C++ STL库的重要组成部分,它们提供了一种方便的方式来管理同类型的对象。其中,STLstring是一种常用的字符串类型。STLstring是一个类,它封装了字符串的操作,并提供了一组成员函数。STLstring的实现使用了动态的内存分配技术,这意味着字符串的大小可以随时改变。STLstring还提供了一些高效的成员函数,例如substr、find、replace等,这些函数可以对字符串进行快速的操作。原创 2023-09-07 17:18:30 · 2022 阅读 · 64 评论 -
【C++精华铺】9.STL string
STL(Standard Template Library)库中的string类是一个字符串类,它提供了管理字符串的各种方法和功能。它是一个可变长度的字符序列,可以自动调整自身大小以适应字符串的长度变化。在之前我们操作字符串都是通过自己去实现相关的函数来进行操作,而且稍不留神就会内存泄漏,在C++中我们更倾向于使用string类来完成和字符串相关的操作。使用string类相比于使用C语言的字符串有以下优点:更加安全:C语言的字符串没有自带长度信息,容易造成内存越界等安全问题。原创 2023-08-25 23:32:56 · 1507 阅读 · 75 评论