/******************************************************************** * singly sListNode template definition * Project #2 - Kyu Bae * *********************************************************************/ #ifndef SLISTND_H #define SLISTND_H /******************************************************************** * template class sListNode * declaration of class sListNode * ********************************************************************/ template< class _NODETYPE > class sList; // forward declaration template class sListNode { friend class sList< _NODETYPE >; // make List a friend public: sListNode( const _NODETYPE & ); // constructor _NODETYPE _getData() const; // return data in the node _NODETYPE _data; // data sListNode< _NODETYPE > *_nextPtr; // next node in the list private: }; /******************************************************************** * class sListNode constructor * initialize the pointers to zero * ********************************************************************/ // Constructor template sListNode< _NODETYPE >::sListNode( const _NODETYPE &info ) : _data( info ), _nextPtr( 0 ) { } /******************************************************************** * getdata() * return datamember data * return fata ********************************************************************/ // Return a copy of the data in the node template< class _NODETYPE > _NODETYPE sListNode< _NODETYPE >::_getData() const { return _data; } #endif /******************************************************************** * the end of class declaraion * * ********************************************************************/