设计一个单链表的类模板,使其能够完成单链表的创建和显示
2010-05-31 16:18
225 查看
//设计一个单链表的类模板,使其能够完成单链表的创建和显示
#include <iostream>
using namespace std;
template <class T>
class List
{
private:
T data;
List *next;
static List *curnode; //当前节点指针,静态数据成员,为List类的所有对象所共有
static List *head; //头指针,静态数据成员,为List类的所有对象所共有
public:
List():next(NULL) //无惨构造函数,用于构造新节点
{
head=curnode=this;
}
List(T newdata):data(newdata),next(NULL)
{}
void create(T newnode);
void display();
};
template <class T>
List<T>*List<T>::curnode;
template <class T>
List<T>*List<T>::head;
template <class T>
void List<T>::create(T newdata)
{
curnode->next=new List(newdata);
curnode=curnode->next;
}
template <class T>
void List<T>::display()
{
curnode=head->next;
while(curnode!=NULL)
{
cout<<curnode->data<<endl;
curnode=curnode->next;
}
}
void main()
{
List<int>list1; //调用无惨构造函数
list1.create(2);
list1.create(0);
list1.create(1);
list1.create(0);
list1.display();
List<char>list2;
list2.create('O');
list2.create('K');
list2.create('!');
list2.display();
}
#include <iostream>
using namespace std;
template <class T>
class List
{
private:
T data;
List *next;
static List *curnode; //当前节点指针,静态数据成员,为List类的所有对象所共有
static List *head; //头指针,静态数据成员,为List类的所有对象所共有
public:
List():next(NULL) //无惨构造函数,用于构造新节点
{
head=curnode=this;
}
List(T newdata):data(newdata),next(NULL)
{}
void create(T newnode);
void display();
};
template <class T>
List<T>*List<T>::curnode;
template <class T>
List<T>*List<T>::head;
template <class T>
void List<T>::create(T newdata)
{
curnode->next=new List(newdata);
curnode=curnode->next;
}
template <class T>
void List<T>::display()
{
curnode=head->next;
while(curnode!=NULL)
{
cout<<curnode->data<<endl;
curnode=curnode->next;
}
}
void main()
{
List<int>list1; //调用无惨构造函数
list1.create(2);
list1.create(0);
list1.create(1);
list1.create(0);
list1.display();
List<char>list2;
list2.create('O');
list2.create('K');
list2.create('!');
list2.display();
}
相关文章推荐
- 设计一个矩形类,完成计算矩形面积和显示矩形属性的功能。
- 创建一个数组, 实现函数init()初始化数组、 实现reverse()函数完成数组元素的逆置,实现empty()清空数组。要求:自己设计函数的参数,返回值。
- 创建一个数组, 实现函数init()初始化数组、 实现empty()清空数组、 实现reverse()函数完成数组元素的逆置。 要求:自己设计函数的参数,返回值。
- C语言下的创建一个数组, 实现函数init()初始化数组、 实现empty()清空数组、 实现reverse()函数完成数组元素的逆置。 要求:自己设计函数的参数,返回值。
- 创建一个数组, 实现函数init()初始化数组、 实现empty()清空数组、 实现reverse()函数完成数组元素的逆置。 要求:自己设计函数的参数,返回值。
- android设计实现窗体启动时,显示一个水平进度条,当进行完成后,隐藏该进度条,并显示一张图片
- 创建一个数组, 实现函数init()初始化数组、 实现empty()清空数组、 实现reverse()函数完成数组元素的逆置。 要求:自己设计函数的参数,返回值
- 4.设计一个Email邮箱注册应用程序。要求:用户输入完成单击“立即注册”按,判断“密码”和“确认密码”文本框内容是否一致,如果一致在立即注册按钮上方显示用户输入的邮件地址,运行结果如图所示。
- //创建一个数组, //实现函数init()初始化数组、 //实现empty()清空数组、 //实现reverse()函数完成数组元素的逆置。 //要求:自己设计函数的参数,返回值。
- 模块化思想:创建一个数组, 实现函数init()初始化数组、 实现empty()清空数组、 实现reverse()函数完成数组元素的逆置。 要求:自己设计函数的参数,返回值。
- android设计 实现窗体启动时,显示一个水平进度条,当进行完成后,隐藏该进度条,并显示一张图 片。
- 创建一个数组, 实现函数init()初始化数组、 实现empty()清空数组、 实现reverse()函数完成数组元素的逆置。 要求:自己设计函数的参数,返回值。
- 创建一个数组, 实现函数init()初始化数组、 实现empty()清空数组、 实现reverse()函数完成数组元素的逆置。自己设计函数的参数,返回值。
- 创建一个数组, 实现函数init()初始化数组、 实现empty()清空数组、 实现reverse()函数完成数组元素的逆置。 要求:自己设计函数的参数,返回值。
- 创建一个数组, 实现函数init()初始化数组、 实现empty()清空数组、 实现reverse()函数完成数组元素的逆置。 要求:自己设计函数的参数,返回值。
- 给出n个学生的考试成绩表,每条记录由学号、姓名和分数和名次组成,设计算法完成下列操作: (1)设计一个显示对学生信息操作的菜单函数如下所示: *************************
- //4.创建一个数组, //实现函数init()初始化数组、 //实现empty()清空数组、 //实现reverse()函数完成数组元素的逆置。 //要求:自己设计函数的参数,返回值。
- 创建两个 DataTable 对象和一个 DataRelation 对象,并将这些新对象添加到 DataSet 中。这些表随后会显示在 DataGridView 控件中
- 设计一个简单的,低耗的能够区分红酒和白酒的感知器(sensor)
- 在创建一个MVC控制器,显示运行所选代码生成器时出错(带读写,使用EF)