如何将模板类添加到堆栈数组?

How can I add a template class to stack array?

本文关键字:堆栈 数组 添加      更新时间:2023-10-16

我正在尝试在堆栈中使用带有数组的模板类。代码运行良好,但是当我添加模板类时,代码生成错误。 这是错误消息。 错误: "堆栈"不是一个类、命名空间、 或枚举。

template<class T>
class stack{
private:
int top;
T a[MAX_value];
public:
stack():top (-1){}
void push(T element);
T pop();
bool isEmpty();
void display();
void getTop();
};

void stack::push(T element){
.......
}
T stack::pop(){
....
}

如果我将堆栈输入声明为整数或双精度,我希望得到一个整数输出。

stack<int> s, or stack<double> s.

在类定义之外为类模板定义成员函数的正确语法如下:

template <class T>
void stack<T>::push(T element) {...}