Член-функция insert
За вмъкване на елемент в списъка се използва член-функцията insert. Семантиката на тази член-функция ще имитира поведението на член-функцията insert в класа std::list на стандартната библиотека.
iterator insert ( iterator position, int val );
Член-функцията вмъква нов елемент със стойност val преди елемента, към който е насочен итератора position. Функцията връща итератор, насочен към новия елемент, добавен към списъка.
При реализиране на член-функцията insert създаваме нов елемент
Node* n=new Node(val);
който трябва да бъде вмъкнат меджу елементите, към които са насочени указателите it.current_ и prev=it.current_->prev_.
Фукцията връща итератор, насочен към новият елемент:
class List {
...
public:
...
iterator insert(iterator it, int val) {
Node* n=new Node(val);
Node* prev=it.current_->prev_;
n->next_=it.current_;
it.current_->prev_=n;
prev->next_=n;
n->prev_=prev;
return iterator(this,n);
}
...
};


