C++ класс List, реализация метода insert

Метод insert принимает позицию куда нужно вставлять и initializer_list. И он в имеющийся список должен вставить initializer_list.

void insert(const int index, const initializer_list<T>& list) {
    _size += list.size();//увеличивая размер моего списка
    Element<T>* current = _front;
    Element<T>* temp = _front;
    Element<T>* tmp;
    for (int i = 0; i < index; ++i)
        current = current->GetNext();//прохожусь по списку до нужной позиции
    for (int i = 0; i <= index; ++i)
        temp = temp->GetNext();//так же прохожусь по списку только уже до следующего элемента
    for (auto el : list) {
        tmp = new Element<T>(el);//создаю переменную со значением из initializer_list
        current->SetNext(tmp);//указываю что идет следующим
        tmp->SetPrev(current);
        current = current->GetNext();//передвигаюсь
    }
    current->SetNext(temp);
}

Я метод реализовала и он даже работает, однако выводит это выводит после компиляции, при нажатии энтер

С чем это может быть связано? Возможно я опять ошиблась в динамической памяти. Как мне это исправить?


Ответы (0 шт):