C++ STL六大组件-简介

本文介绍了C++标准模板库(STL)的六大组件:容器、适配器、算法、迭代器、函数对象和分配器。容器如Vector、List等用于存储数据;适配器如Queue、Stack提供特定接口;算法如Sort、Search等;迭代器作为容器和算法间的桥梁;函数对象提供行为策略;分配器负责内存管理。文章详细分析了每个组件的原理和使用方法。

STL(Standard Template Library),即标准模板库,是一个高效的C++程序库。包含了诸多在计算机科学领域里常用的基本数据结构和基本算法。从逻辑层次来看,在STL中体现了泛型化程序设计的思想(generic programming)。从实现层次看,整个STL是以一种类型参数化(type parameterized)的方式实现的。

STL的六大组件如下:

  1. Container(容器) 
  2. Adapter(适配器) 
  3. Algorithm(算法) 
  4. Iterator(迭代器) 
  5. Function object(函数对象) 
  6. Allocator(分配器)

六大组件的基本作用:

  1. Container(容器)    各种数据结构,如Vector,List,Deque,Set,Map,用来存放数据,STL容器是一种Class Template,就体积而言,这一部分很像冰山载海面的比率。
  2. Adapter(适配器)    一种用来修饰容器(Containers)仿函数(Functors)迭代器(Iterators)接口的东西,例如:STL提供的Queue和Stack,虽然看似容器,其实只能算是一种容器配接器,因为 它们的底部完全借助Deque,所有操作有底层的Deque供应。改变Functor接口者,称为Function Adapter;改变Container接口者,称为Container Adapter;改变Iterator接口者,称为Iterator Adapter。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值