Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void IteratedList::addToPosition(ListIterator& pos, TElem e) {
- if (!pos.valid())
- throw std::runtime_error("error");
- DLLNode *node = new DLLNode{e};
- if (pos.currentNode == tail) {
- node->setPreviousElement(tail);
- node->setNextElement(nullptr);
- tail->setNextElement(node);
- }
- else {
- node->setPreviousElement(pos.currentNode);
- node->setNextElement(pos.currentNode->getNextElement());
- pos.currentNode->getNextElement()->setPreviousElement(node);
- pos.currentNode->setNextElement(node);
- }
- ++listSize;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement