一:C++库中对于vector的介绍
vector的底层其实就是数据结构中的顺序表,顺序表的底层就是变长数组,是一段连续的物理空间
在下面的实现中,重点实现的是其中的迭代器和插入删除,下标访问等功能,模拟实现模板类,有利于加深对于模板的认识,更方便使用
二:模拟实现
在模拟实现过程中,要注意迭代器失效问题
#pragma once
#include <iostream>
#include <assert.h>
using namespace std;
namespace Zq
{
template<class T>
class vector
{
public:
// Vector的迭代器是一个原生指针
typedef T* iterator;
typedef const T* const_iterator;
iterator begin()