例如,我尝试编写自己的vector
,所以我只是这样写它的assign
函数
template <typename T>
void Vector<T> :: assign(T *start, T *end)
{
if (end - start > _capacity)
{
resize(end - start);
}
_size = end - start;
delete []ptr;
ptr = new T[_capacity];
memcpy(ptr, start, end - start);
}
我之前有新的指针ptr
,但我可以复制指针start
和end
为什么?非常感谢。