STL简介
STL的原名是“Standard Template Library”,翻译过来就是标准模板库。STL是C++标准库的一个重要组成部分,主要由六大组件构成。这六大组件是:
容器(Container)、算法(algorithm)、迭代器(iterator)、仿函数(functor)、适配器(adapter)、配置器(allocator)。
1、容器(container)
容器可以分为三类即序列容器、关联容器和容器适配器。各类具体包含如下所示:
序列容器:vector、list、deque
关联容器:set、map、multiset、multimap
适配器容器:stack、queue、priority_queue
STL中的string
string是STL的字符串类型,在C语言中,我们通常用char *或者char[]字符数组来表示字符串。C++的string和C语言的char *有什么区别呢?
string是一个类,char *是指向字符的指针
string封装了char *,管理这个字符串,是一个char *类型的容器
string不用考虑内存释放和数组越界
string提供了一些列的字符串操作函数
vector的基本用法
既然vector是容器,那么就可以向这个容器添加删除元素。
基本用法:
front()返回头部元素的引用,可以当左值
back()返回尾部元素的引用,可以当左值
push_back()添加元素,只能尾部添加
pop_back()移除元素,只能在尾部移除
STL中的deque容器
deque是一个双端数组容器:可以在头部和尾部操作元素。
push_back 从尾部插入元素
push_front 从头部插入元素
pop_back 从尾部删除元素
pop_front 从头部删除元素