文章目录 vector的数据结构 vector的构造与析构 vector的插入与删除 vector的其他操作 vector的简单实现 本文基于SGI STL vector源代码分析其底层实现,只关注核心实现,不考虑空间配置器allocator,迭代器iterator等内容。 vector的数据结构 vector采用简单的线性连续空间。以两个迭代器start和end分别指向头尾,并以迭代器end_of_storage指向容量尾端。容量可能比(尾-头)还大,多余即备用空间。 template <class T, class Alloc = alloc> // 预设使用 alloc 为配置器 class