C++STL
文章平均质量分 83
天空中的野鸟
这个作者很懒,什么都没留下…
展开
-
C++ STL总结(六)string
一、顺序容器概述一个容器就是一些特定类型对象的集合,顺序容器为程序员提供了控制元素存储和访问顺序的能力,这种顺序不依赖与元素的的值,而是与元素加入容器时的位置相对应。STL顺序容器包含:vector:可变大小数组。支持快速随机访问,在尾部以外插入或删除可能很慢deque:双端队列。支持快速随机访问,在头尾插入和删除很快list:双向链表。只支持双向顺序访问。在任意位置插入和删除很快forward list:单向链表。只支持单向顺序访问,在任意位置插入和删除很快array:固定大小数组。支持快速原创 2021-09-15 19:12:39 · 323 阅读 · 0 评论 -
C++ STL总结(五)forward_list
1.forward_list内存结构forward_list是单向链表,内存结构与list类似,只不过是单向的2.forward_list容量操作函数功能bool empty()检查容器是否为空size_t max_size()返回容器由于系统或库的实现所限制可容纳的元素最大数量void resize(size_t new_size, const T& x)重设容器的size大小,如果size变大,则以默认值填充变长的位置,如果size变小,则删除变短那原创 2021-09-14 18:52:10 · 2593 阅读 · 2 评论 -
C++ STL总结(四)list
1.list内存结构list是双向链表,元素在内存中并不是连续存储的。它在每次插入和删除一个元素时都会申请和释放一个元素的空间。2.list容量操作函数功能bool empty()检查容器是否为空size_t size()返回容器中元素的个数size_t max_size()返回容器由于系统或库的实现所限制可容纳的元素最大数量void resize(size_t new_size, const T& x)重设容器的size大小,如果size变大,原创 2021-09-14 18:50:43 · 565 阅读 · 0 评论 -
C++ STL总结(三)deque
1.deque内存结构deque是双向开口的,即在头尾插入和删除元素效率都很高,逻辑上deque的内存结构是这样的实际上,deque是用一个中控器map来管理这些连续的内存空间。map是一小块连续的空间,每个元素都是一个指针,指向连续的内存空间,指向的空间中存储的才是真正的deque的元素。2.deque容量操作函数功能bool empty()检查容器是否为空size_t size()返回容器中元素的个数size_t max_size()返回容器由于系统或库原创 2021-09-14 18:49:08 · 416 阅读 · 0 评论 -
C++ STL总结(一)顺序容器
一、顺序容器概述一个容器就是一些特定类型对象的集合,顺序容器为程序员提供了控制元素存储和访问顺序的能力,这种顺序不依赖与元素的的值,而是与元素加入容器时的位置相对应。STL顺序容器包含:vector:可变大小数组。支持快速随机访问,在尾部以外插入或删除可能很慢deque:双端队列。支持快速随机访问,在头尾插入和删除很快list:双向链表。只支持双向顺序访问。在任意位置插入和删除很快forward list:单向链表。只支持单向顺序访问,在任意位置插入和删除很快array:固定大小数组。支持快速原创 2021-09-14 18:47:34 · 611 阅读 · 0 评论 -
C++ STL总结(二)vector
1.vector内存结构vector在内存中是顺序存储的,但是为了防止插入元素后频繁重新分配内存,所以会预留一定空间,如图所示。但是,当预留空间用尽后,vector会重新申请一块更大的内存,并且将旧的内存中的数据全部拷贝到新的内存中,然后把旧内存返还给系统。2.vector容量操作函数功能bool empty()检查容器是否为空size_t size()返回容器中元素的个数size_t max_size()返回容器由于系统或库的实现所限制可容纳的元素最大数量原创 2021-09-14 18:45:00 · 834 阅读 · 0 评论