1: // Created by Frank M. Carrano and Timothy M. Henry. 2: // Copyright (c) 2017 Pearson Education, Hoboken, New Jersey. 4: template<class ItemType> 5: bool LinkedBag<ItemType>::add(const ItemType& newEntry) 6: { 7: // Add to beginning of chain: new node references rest of chain; 8: // (headPtr is null if chain is empty) 9: Node<ItemType>* nextNodePtr = new Node<ItemType>(); 10: nextNodePtr->setItem(newEntry); 11: nextNodePtr->setNext(headPtr); // New node points to chain 12: // Node<ItemType>* nextNodePtr = new Node<ItemType>(newEntry, headPtr); // alternate code 14: headPtr = nextNodePtr; // New node is now first node 15: itemCount++; 16: 17: return true; // The method is always successful 18: } // end add