我正在尝试实现堆栈和队列.我还获得了一个代码来测试堆栈和队列(以查看它们各自的功能是否正常工作).
我已经实现了堆栈和quete的函数,但是当我们尝试编译它们时,我得到错误:
在析构函数`Stack :: ~Stack()'期望的类名之前'(''
两个中的标记.
以下是通用的Stack类:
template <class T>
class Stack
{
List<T> list;
public:
Stack();
Stack(const Stack<T>& otherStack);
~Stack();
}
Run Code Online (Sandbox Code Playgroud)
List类:
template <class T>
class List
{
ListItem<T> *head;
public:
List();
List(const List<T>& otherList);
~List();
}
Run Code Online (Sandbox Code Playgroud)
现在List类的析构函数工作得很好.所以记住这一点,我对析构函数的实现是:
template <class T>
Stack<T>::~Stack()
{
list.~List();
}
Run Code Online (Sandbox Code Playgroud)
我在这做错了什么?