Vector
实现vector中的insert方法
template<class T> class vector { //从pos位置开始插入,elems为插入元素的指针地址,len为elems指向的长度 bool insert(size_t pos,T * elems,size_t len = 1); private: T* __begin;//容器开始地址 T* __end;//容器有效元素的结束地址 size_t __cap;//容器的容量 };
void insert(const_iterator iter,const T& t ) { int index=iter-begin(); if (index<size_) { if (size_==capacity_) { int capa=calculateCapacity(); newCapacity(capa); } memmove(buf+index+1,buf+index,(size_-index)*sizeof(T)); buf[index]=t; size_++; } }