STL标准与泛型编程

1 认识版本,header,重要资源

  • C++标准库主要是用模板,标准库大部分是STL(Standard Template Library),新式C header files,使用去掉.h,前面加上c旧式的header的组件不被封装于namespace std
  • 标准库六大部件:分配器,迭代器(迭代器适配器),算法,容器(容器适配器),仿函数(仿函数适配器)

3 容器分类与各种测试

  • 三类容器List是一个双向环状链表
    • sequence containers,适合索引,排序,查找
    • associative containers
    • unordered containers,采用hash table

4 容器分类与各种测试(二)

  • vector的增长是两倍的增长,string在vector中只是指针的大小vector容器有大小上限,vector.data()也是在容器非空时,获得第一个元素的地址

5 容器分类与各种测试(三)

  • List自己有一个sort()函数
  • forward_list没有push_back(),自己也有一个sort()
  • gun c中存在一个slist,它和forward_list是一个东西,早期标准库不支持forward_list
  • deque是由多个buffer指针构成,buffer之间需要逻辑上是连续的一个buffer中的元素大小固定,当一个buffer分配满了,则需要分配新的buffer,左右都是
  • 关联容器,queue和stack内部就是一个deque,这两种容器其中没有自己的数据结构,它们是借用deque,所以它们是adpater
    • queue
    • stack

6 容器分类与各种测试(四)

posted @ 2022-06-10 09:59  抿了抿嘴丶  阅读(37)  评论(0编辑  收藏  举报