c04p194.txt
来自「Data Abstraction & Problem Solving with 」· 文本 代码 · 共 43 行
TXT
43 行
void List::retrieve(int index, ListItemType& dataItem) const throw(ListIndexOutOfRangeException){ if ((index < 1) || (index > getLength())) throw ListIndexOutOfRangeException( "ListIndexOutOfRangeException: retrieve index out of range"); else { // get pointer to node, then data in node ListNode *cur = find(index); dataItem = cur->item; } // end if} // end retrievevoid List::insert(int index, ListItemType newItem) throw(ListIndexOutOfRangeException){ int newLength = getLength() + 1; if ((index < 1) || (index > newLength)) throw ListIndexOutOfRangeException( "ListIndexOutOfRangeException: insert index out of range"); else { // create new node and place newItem in it ListNode *newPtr = new ListNode; size = newLength; newPtr->item = newItem; // attach new node to list if (index == 1) { // insert new node at beginning of list newPtr->next = head; head = newPtr; } else { ListNode *prev = find(index-1); // insert new node after node // to which prev points newPtr->next = prev->next; prev->next = newPtr; } // end if } // end if} // end insert
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?