首页 > C++ > STL(标准模板库)
阅读:32,191
C++ STL(标准模板库█■▄)
C++ 语言的核心优势之一就是便于软件的重用。C++ 中有两个方面体现重用███:
C++ 的标准模板库(Standard Template Library▓▓,STL)是泛型程序设计最成功应用的实例。STL 是一些常用数据结构(如链表▄■▄、可变长数组、排序二叉树)和算法(如排序■■■、查找)的模板的集合,主要由 Alex Stepanov 主持开发▄■▄■,于 1998 年被加入 C++ 标准。
有了 STL,程序员就不必编写大多数常用的数据结构和算法▓▄▓▄。而且 STL 是经过精心设计的,运行效率很高,比水平一般的程序员编写的同类代码速度更快▄▓。
有一种说法▓█▄■,C++ 是用来编写大程序的,如果只是编写几十上百行的小程序,用C语言就可以▄■▓,没有必要用 C++。
这个说法是不准确的。可以说▄▓,写小程序没必要用面向对象的方法,但是用 C++ 还是能够带来很大方便的,因为 C++ 中有 STL▓█。哪怕编写只有十几行的程序,也可能会用到 STL 中提供的数据结构和算法。例如对数组排序█■▄,用 STL 中的 sort 算法往往只需要一条语句就能解决,而不用像调用C语言库函数 qsort 那样还要编写比较函数。
- 一是面向对象的继承和多态机制;
- 二是通过模板的概念实现了对泛型程序设计的支持。
C++ 的标准模板库(Standard Template Library▓▓,STL)是泛型程序设计最成功应用的实例。STL 是一些常用数据结构(如链表▄■▄、可变长数组、排序二叉树)和算法(如排序■■■、查找)的模板的集合,主要由 Alex Stepanov 主持开发▄■▄■,于 1998 年被加入 C++ 标准。
有了 STL,程序员就不必编写大多数常用的数据结构和算法▓▄▓▄。而且 STL 是经过精心设计的,运行效率很高,比水平一般的程序员编写的同类代码速度更快▄▓。
有一种说法▓█▄■,C++ 是用来编写大程序的,如果只是编写几十上百行的小程序,用C语言就可以▄■▓,没有必要用 C++。
这个说法是不准确的。可以说▄▓,写小程序没必要用面向对象的方法,但是用 C++ 还是能够带来很大方便的,因为 C++ 中有 STL▓█。哪怕编写只有十几行的程序,也可能会用到 STL 中提供的数据结构和算法。例如对数组排序█■▄,用 STL 中的 sort 算法往往只需要一条语句就能解决,而不用像调用C语言库函数 qsort 那样还要编写比较函数。
- 本章内容███:
- 1. C++容器(STL容器)
- 2. C++迭代器(STL迭代器)iterator博猫
- 3. STL算法博猫
- 4. STL中“大▓▓”、“小”和“相等▄■▄”的概念
- 5. C++ vector,STL vector(可变长的动态数组)博猫
- 6. C++ list■■■,STL list(双向链表)博猫
- 7. C++ deque,STL deque(双向队列博猫▄■▄■)
- 8. C++函数对象博猫(附带实例)
- 9. C++关联容器,STL关联容器
- 10. C++ pair类模板▓▄▓▄,STL pair类模板
- 11. C++ multiset,STL multiset博猫
- 12. C++ set,STL set博猫
- 13. C++ multimap▄▓,STL multimap博猫
- 14. C++ map▓█▄■,STL map博猫
- 15. C++容器适配器简介
- 16. C++ stack,STL stack博猫
- 17. C++ queue和priority_queue,STL queue和priority_queue
- 18. STL算法分类
- 19. C++ string类(C++字符串▄■▓)完全攻略
- 20. C++ bitset类博猫
编程帮,一个分享编程知识的公众号▄▓。跟着站长一起学习,每天都有进步。
通俗易懂▓█,深入浅出,一篇文章只讲一个知识点。
文章不深奥█■▄,不需要钻研,在公交、在地铁███、在厕所都可以阅读,随时随地涨姿势。
文章不涉及代码▓▓,不烧脑细胞,人人都可以学习。
当你决定关注「编程帮」▄■▄,你已然超越了90%的程序员!

微信扫描二维码关注