当前位置: 首页 > news >正文

C++ STL 六大组件

STL大体分为六大组件,分别是:容器、算法、迭代器、仿函数、适配器(配接器)、空间配置器

  1. 容器:各种数据结构,如vector、list、deque、set、map、stack等,用来存放数据。
  2. 算法:各种常用的算法,如sort、find、copy、for_each等。
  3. 迭代器:扮演了容器与算法之间的胶合剂(可以理解为指针,常用的有双向迭代器和随机访问迭代器)。
  4. 仿函数:行为类似函数,可作为算法的某种策略。运算符重载 operator()实现,又称为函数对象。如果返回值是bool类型,就叫谓词,一个输入参数是一元谓词,两个则是二元谓词。
  5. 适配器:一种用来修饰容器或者仿函数迭代器接口的东西。适配器本身是一个新的自定义类型 class/struct,其中会包含一个或多个辅助的所适配的类型的成员,并对内含的成员的接口进行改造,再以新的适配器类型向外部提供接口。
  6. 空间配置器:负责空间的配置与管理。例如,使用vector容器,存储数据的空间由空间配置器完成内存的分配和资源回收。空间配置器本质上是对newdelete运算符再次封装而成的类模板,对外提供可用的接口,实现内存资源的自动化管理。

http://www.mrgr.cn/news/49218.html

相关文章:

  • STM32 | MQTT+esp8266(第十四天)
  • 尚硅谷rabbitmq2024介绍和工作模式 第4-9节 答疑
  • 【云原生】Helm资源清单管理工具
  • 南邮-软件安全--第一次实验报告-非爆破计算校验值
  • 2024最新网络安全自学路线,内容涵盖3-5年技能提升
  • LeetCode 每日一题 2024/10/7-2024/10/13
  • AWD入门
  • Redis 集群入门指南
  • 基于青蒿素优化算法(Artemisinin Optimization Algorithm, AOA)的多无人机协同三维路径规划(提供MATLAB代码)
  • Panasonic Programming Contest 2024(AtCoder Beginner Contest 375)题解
  • mysql隐藏索引
  • ARM/Linux嵌入式面经(四三):重庆移动面经
  • 乐队相关和经济学供给
  • 【设计模式】揭秘Spring框架:设计模式如何驱动代码重用与扩展性的最佳实践
  • MarsCode刷题--找单独的数
  • YOLO11改进 | 注意力机制 | 用于增强小目标感受野的RFEM
  • xss-labs靶场第九关测试报告
  • 在 Android 手机上从SD 卡恢复数据的 6 个有效应用程序
  • JAVA学习-练习试用Java实现“进制转换”
  • 视频文案提取