首页 > 其他 > 详细

我的模板栈

时间:2016-05-16 21:26:48      阅读:254      评论:0      收藏:0      [点我收藏+]
 1 template<typename T>
 2 struct Node
 3 {
 4     T data;
 5     Node<T>* next;
 6 };
 7 
 8 template<typename T>
 9 class stack
10 {
11     Node<T>* top;
12 public:
13     stack():top(NULL){}
14     void push(T n);
15     T pop();
16     bool stackEmpty();
17     T getTop();
18     ~stack(){}
19     void print();
20 };
21 
22 template<typename T>
23 void stack<T>::push(T n)
24 {
25     Node<T>* r=new Node<T>;
26     r->data=n;
27     r->next=top;
28     top=r;
29 }
30 
31 template<typename T>
32 T stack<T>::pop()
33 {
34     Node<T> *ptr = top;  
35     top = top->next;
36     T t=ptr->data;
37     delete ptr;
38     return t;
39 }
40 
41 
42 template<typename T>
43 void stack<T>::print()
44 {
45     for(Node<T>* p=top;p;p=p->next)
46         cout<<p->data<<"  ";
47 }
48 
49 template<typename T>
50 T stack<T>::getTop()
51 {
52     return top->data;
53 }
54 
55 template<typename T>
56 bool stack<T>::stackEmpty()
57 {
58     if(top)return false;
59     else return true;
60 }

 

我的模板栈

原文:http://www.cnblogs.com/vhyc/p/5499224.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!