数据结构学习(C++)——单链表(定义与实现)[2]

[入库:2005年8月18日] [更新:2007年3月24日]

本文简介:选择自 happycock 的 blog

【重要修改】原书的缺省构造函数是这样的node() : data(null), link(null) {}  。我原来也是照着写的,结果当我做扩充时发现这样是不对的。当type为结构而不是简单类型(int、……),不能简单赋null值。这样做使得定义的模板只能用于很少的简单类型。显然,这里应该调用type的缺省构造函数。 这也要求,用在这里的类一定要有缺省构造函数。在下面可以看到构造链表时,使用了这个缺省构造函数。当然,这里是约定带表头节点的链表,不带头节点的情况请大家自己思考。

【闲话】请不要对int *p = new int(1);这种语法有什么怀疑,实际上int也可以看成一种class

单链表类

#ifndef list_h

#define list_h

 

#ifndef ture

#define ture 1

#endif

#ifndef false

#define false 0

#endif

typedef int bool;

 

#include "node.h"

 

template <class type> class list       //单链表定义

{

本文关键:数据结构 C++ 单链表
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top