调整动态数组的大小

我正在实现一个动态数组,我需要知道哪种是调整其大小的更好方法。  循环还是memcpy?这是我使用memcpy进行大小调整的代码,但我知道有一种循环方法,我想知道两种实现之间是否存在差异

void extend()
{

    unsigned int cap = capacity == 0 ? DEFAULT_SIZE : capacity * 2;

    T* tmp = new T[cap];
    memcpy(tmp,data,size * sizeof(T));

    delete[] data;
    data = tmp;

    capacity = cap;
}

likelele 回答:调整动态数组的大小

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3019781.html

大家都在问