节点类
  
  #ifndef Node_H 
  #define Node_H 
  
  template class Type class Node //单链节点类
  {
   public:
  Type data;
  NodeType *link;
  Node() : data(Type()), link(NULL) {} 
  Node(const Type &item) : data(item), link(NULL) {}
  Node(const Type &item, NodeType *p) : data(item), link(p) {}
   };
  #endif 
  因为数据结构里用到这个结构的地方太多了,假如用《数据结构》那种声明友元的做法,那声明不知道要比这个类的本身长多少。不如开放成员,事实上,这种结构只是C中的strUCt,除了为了方便初始化一下,不需要任何的方法,原书那是画蛇添足。下面可以看到,链表的public部分没有返回Node或者Node*的函数,所以,别的类不可能用这个开放的接口对链表中的节点操作。
  
  原书...[ 查看全文 ]