c++STL基础

C++ standard library:C++ 标准库
STL (standard template library) :标准模板库 (C++标准库的主要部分)

标准库以头文件形式呈现
c++标准库的头文件可以不带副名(.h): #include <vector>
新式的c头文件也可以不带副名(.h),前面加个字母c: #include<cstdio>
旧时的c头文件依旧可以使用: #include<stdio.h>

stl六大组件
1.容器containers
2.分配器allocators
3.算法algorithms
4.迭代器iterators
5.适配器adapters
6.仿函数functors
在这里插入图片描述
实例
在这里插入图片描述
标准库中没有虚函数,继承等面向对象(object-oriented programming)的思想,其主要思想是泛型编程(generic programming)
OOP思想:将数据和其处理方法封装到类中。
GP思想:将容器(数据)和算法各自单独设计,再以迭代器将二者连接。

前闭后开区间 [ ):
在这里插入图片描述
标准库容器表现为前闭后开区间,begin指向第一个元素,end指向最后一个元素的下一位置。所以不要对end返回的迭代器解引用

在这里插入图片描述
算法无法直接接触到容器,它需要的一切信息都从迭代器获得(萃取机),迭代器应该需要能够回答算法对容器特征的提问。

猜你喜欢

转载自blog.csdn.net/shayne000/article/details/88591532
今日推荐