C++ STL库是一个由容器,算法和迭代器组成的标准C++库,其中容器是收集和管理数据的容器,算法是用于操作容器中数据的算法,而迭代器是用于访问容器中数据的指针。
常见容器
STL容器分为序列容器和关联容器,序列容器中的元素按照其添加的顺序存储,而关联容器中的元素按照其值的大小进行排序。常见的序列容器有vector,deque,list,常见的关联容器有set,multiset,map,multimap,unordered_set,unordered_multiset,unordered_map,unordered_multimap。
使用方法
1. vector
vector是一种动态数组,可以动态增加和删除元素,可以用来存储任意类型的数据。可以使用下面的方法来操作vector:
- push_back():在vector末尾添加元素
- pop_back():删除vector末尾的元素
- size():获取vector中元素的个数
- clear():清空vector中的元素
#include#include int main() { std::vector v; v.push_back(1); v.push_back(2); v.push_back(3); std::cout << "vector size:" << v.size() << std::endl; v.pop_back(); std::cout << "vector size:" << v.size() << std::endl; v.clear(); std::cout << "vector size:" << v.size() << std::endl; return 0; }
2. set
set是一种关联容器,其中的元素是按照其值的大小进行排序的,可以用来存储任意类型的数据。可以使用下面的方法来操作set:
- insert():在set中添加元素
- erase():删除set中的元素
- size():获取set中元素的个数
- clear():清空set中的元素
#include#include int main() { std::set s; s.insert(1); s.insert(2); s.insert(3); std::cout << "set size:" << s.size() << std::endl; s.erase(2); std::cout << "set size:" << s.size() << std::endl; s.clear(); std::cout << "set size:" << s.size() << std::endl; return 0; }
C++ STL库提供了一组功能强大的容器,算法和迭代器,可以极大地提高程序的开发效率,是C++程序开发的必备工具。