当前位置:编程学习 > C/C++ >>

栈的数组实现

 
/* 
 * stack_1.cpp 
 * 
 *  Created on: 2013年8月2日 
 *      Author: 黄东东 
 *      为能有章泽天这样的女朋友而不断努力......... 
 */  
  
  
#include <iostream>   
  
using namespace std;  
  
typedef int T;  
class Stack{  
    T a[5];  
    int cur;  
  
public:  
    Stack():cur(0){  
  
    }  
    void push(const T& d ){  
        a[cur++] = d;  
    }  
  
    T pop(){  
  
        return a[--cur];  
    }  
  
    const T & top(){  
  
        return a[cur - 1];  
    }  
  
  
    bool empty(){  
  
        return cur == 0;  
    }  
  
    bool full(){  
  
        return cur == 5;  
    }  
  
    int size(){  
  
        return cur;  
    }  
  
    void clear(){  
  
        cur = 0;  
    }  
};  
  
  
int main(){  
  
    Stack s;  
  
    s.push(6);  
    s.push(7);  
    s.push(8);  
    s.push(9);  
    s.push(10);  
  
  
    while(!s.empty()){  
        cout<<s.pop()<<endl;  
    }  
}  

/*
 * stack_1.cpp
 *
 *  Created on: 2013年8月2日
 *      Author: 黄东东
 *      为能有章泽天这样的女朋友而不断努力.........
 */


#include <iostream>

using namespace std;

typedef int T;
class Stack{
	T a[5];
	int cur;

public:
	Stack():cur(0){

	}
	void push(const T& d ){
		a[cur++] = d;
	}

	T pop(){

		return a[--cur];
	}

	const T & top(){

		return a[cur - 1];
	}


	bool empty(){

		return cur == 0;
	}

	bool full(){

		return cur == 5;
	}

	int size(){

		return cur;
	}

	void clear(){

		cur = 0;
	}
};


int main(){

	Stack s;

	s.push(6);
	s.push(7);
	s.push(8);
	s.push(9);
	s.push(10);


	while(!s.empty()){
		cout<<s.pop()<<endl;
	}
}


 

补充:软件开发 , C++ ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,