Source of ListingC4-1.cpp


  1: //  Created by Frank M. Carrano and Timothy M. Henry.
  2: //  Copyright (c) 2017 Pearson Education, Hoboken, New Jersey.

  4: // Listing C4-1

  6: #include <memory>

  8: template<class ItemType>
  9: class Node
 10: {
 11: private:
 12:    ItemType item;                        // A data item
 13:    std::shared_ptr<Node<ItemType>> next; // Pointer to next node
 14: public:
 15:    Node();
 16:    Node(const ItemType& anItem);
 17:    Node(const ItemType& anItem,
 18:         std::shared_ptr<Node<ItemType>> nextNodePtr);
 19:    void setItem(const ItemType& anItem);
 20:    void setNext(std::shared_ptr<Node<ItemType>> nextNodePtr);
 21:    ItemType getItem() const;
 22:    auto getNext() const;
 23: }; // end Node