C++容器

  1. 总览

    1.   deque是一个双向队列,可以在头尾快速的插入和删除

  2. 构造方式

     array容器大小是固定的,所以不能用不定的构造范式;字符串必须知道每个字符是什么

  3.  什么是迭代器“”?

     L现在就是一个迭代器

     insert/erase 中间插入删除;vector连续存储

  4. forwardlist 为什么还要?
    1.   省空间
    2. 极致的效率,所以超级轻量级
    3. 单向链表,没有办法删除特定元素的指针,因为要找上一个指针
  5.  insert怎么用

     迭代器可以是iterator也可以是cosnt当然容器不能是const;

  6. 插入n个x
  7. 模板类型 
    1.   尽可能降低对未知参数的要求
    2. emplace引进少一层拷贝,万能引用,完美转发

       直接构造好放进容乃公器、

    3. 提供比较运算符

    4. equal
  8. 迭代器的种类
  9. 容器适配器
    1.  优先队列实际上是用堆来实现的

    2. 它们不是迭代器,不能迭代,不是容器
    3. 它们有底层容器,封装成接口,重新定义名字
    4.  非常小心,解引用,内部代理类实现,把空间压缩为一位

    5. bitset 大小是固定的,二进制位运算支持按位与,位的集合
    6. boost库,在你了解了标准库之外最应该了解的库
  10. 标准库里的算法
    1.   Algorithm

       想做:第一排序,快速的排序,第二把重复的元素去掉,找出不重复的元素排在前列,重复的元素弄到end后面去,it是返回的一个迭代 假设去重后元素有k个,it就是指向k的下一个元素。unique必须给一个排过序的元素。n有多少个去重的元素

    2. 如何使用谓词
    3. 不要滥用重载运算符

       点的大小关系是不明确的,可以是横坐标,也可是纵坐标,也可以是模长,至少是一个函数去表示

       

       static函数不是成员函数,作用域在类内,可以使用类的私有成员,不存在this指针,必须要指明哪个对象

    4.  假如我比较的那个特定值是动态变化的呢

    5. struct类集合如何使用 

       

       lessthan临时对象创建

posted @   SunShine789  阅读(10)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示