STL主要分为分为三类:
- algorithm(算法) - 对数据进行处理(解决问题) 步骤的有限集合
- container(容器) - 用来管理一组数据元素
- Iterator (迭代器) - 可遍历STL容器内全部或部分元素”的对象
容器和算法通过迭代器可以进行无缝地连接。在STL中几乎所有的代码都采用了模板类和模板函数的方式,这相比于传统的由函数和类组成的库来说提供了更好的代码重用机会。
STL 最早源于惠普实验室,早于C++存在,但是C++引入STL概念后,STL就成为C++的一部分,因为它被内建在你的编译器之内,不需要另行安装。
STL被组织为下面的13个头文 件:< algorithm >、< deque >、< functional >、< iterator >、< vector >、< list >、< map >、< memory >、< numeric >、< queue >、< set >、< stack > 和< utility >。
#include <iostream>
#include <vector> //容器
#include <algorithm>//算法
using namespace std;
class Demo {
public:
Demo(const char* name = "无名", int age = 0) {
strncpy_s(m_name, name, 64);
m_age = age;
}
Demo(const Demo& other) {
cout <<