美文网首页
STL的个人体会

STL的个人体会

作者: 飞翃荷兰人 | 来源:发表于2020-04-25 16:37 被阅读0次

    stl六大组件

    • 容器
    • 迭代器
    • 算法
    • 仿函数
    • 容器配接器
    • 空间分配器

    事例

    假如要对vector<int> 进行排序,

    sort(__wrap_iter<_Tp*> __first, __wrap_iter<_Tp*> __last, _Compare __comp)
    {
        typedef typename add_lvalue_reference<_Compare>::type _Comp_ref;
        _VSTD::sort<_Tp*, _Comp_ref>(__first.base(), __last.base(), __comp);
    }
    

    first,last为迭代器,__comp为仿函数,sort默认排序为从小到大,但是加上仿函数后,可以实现任意的排序方式,所以一个排序,就接触到了容器,算法,仿函数,迭代器,空间分配器的概念。

    空间配接器是做什么的?其实就是对容器的接口进行修改,达到一种容器的变形目的,比如stack就是deque的配接器。

    容器

    容器分为顺序容器和关联容器,关联容器又分为有序容器和无序容器。有序容器底层实现一般都是红黑树,比如map, set。

    相关文章

      网友评论

          本文标题:STL的个人体会

          本文链接:https://www.haomeiwen.com/subject/otekwhtx.html