STL的个人体会

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。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容