// Created by Frank M. Carrano and Tim Henry. // Copyright (c) 2013 __Pearson Education__. All rights reserved. /** A class of nodes for a link-based binary tree. Listing 16-2. @file BinaryNode.h */ #ifndef _BINARY_NODE #define _BINARY_NODE template class BinaryNode { private: ItemType item; // Data portion BinaryNode* leftChildPtr; // Pointer to left child BinaryNode* rightChildPtr; // Pointer to right child public: BinaryNode(); BinaryNode(const ItemType& anItem); BinaryNode(const ItemType& anItem, BinaryNode* leftPtr, BinaryNode* rightPtr); void setItem(const ItemType& anItem); ItemType getItem() const; bool isLeaf() const; BinaryNode* getLeftChildPtr() const; BinaryNode* getRightChildPtr() const; void setLeftChildPtr(BinaryNode* leftPtr); void setRightChildPtr(BinaryNode* rightPtr); }; // end BinaryNode #include "BinaryNode.cpp" #endif