C++实例 | 栈类模版
#include <stdlib.h>
#include <iostream>
using namespace std;
// 栈的类模板
template <class T>
class Stack {
public:
Stack(int size);
Stack(const Stack &p);
virtual ~Stack();
void Push(const T &e);
const T &Pop();
const T &Peek() const;
bool IsEmpty() const;
private:
T *buff;
int max;
int top; //当前数据所在的地方(相当于一个标记)
};
// 栈类模板的构造函数模板: 给过来栈的空间新建一个栈对象/实例化栈对象,
// 其中数据的数据类型是T
template <class T>
Stack<T>::Stack(int size) {
buff = new