标准容器部分

    技术2025-07-14  16

    1 元素

    容器的元素是被插入对象的副本,因此元素必须属于有个允许容器的实现对她进行复制的类型。容器可以利用复制构造函数或者赋值做元素的复制工作。

    2 比较

    关联容器要求其元素是有序的。默认方式是<运算符定义。如果<不合适,可以提供比较合适的比较操作。比如定义一个函数对象。

    对于顺序准则cmp:

     1 cmp(x,x)==false.

     2 if cmp(x,y) and cmp(y,z),then cmp(y,z).

     3 define equiv(x,y)为 !( cmp(x,y)||cmp(y,x) ).

     4 其他的关系运算符,都可以通过<和==进行构建。

     二 序列

    1 list

     粘接splice().这个相当于剪贴过去,不做复制。

      merge()归并排序。这个需要注意的时候,在规定前,需要保证2个list中的排列顺序是和目标list需要排列的顺序一致。The default order for the first member function is ascending order.

    二 关联容器 map set mulltimap multiset

    map

    比较,默认规定,关键码比较采用<,但是,可以通过末班参数或者构造函数的参数提供替代运算。

    对于下标[]。由于[]总需要V(),如果一个map的值类型没有默认值,就无法对他使用下标操作。这是标准关联容器的一个很不幸的限制。。

    对于multimap,无下标操作[],使用equal_range(),lower_bound(),uper_bound()操作。

    三 拟容器 string valarray bitset

     

    最新回复(0)