スタックとキューを実装しようとしています。また、スタックとキューの両方をテストするためのコードも提供されています(それぞれの機能が正しく機能するかどうかを確認するため)。
スタックとqueteの両方の関数を実装しましたが、それらをコンパイルしようとすると、次のエラーが発生します。
デストラクタ `Stack ::〜Stack()'
で、両方の'('トークンの前にクラス名が必要です。
以下は、一般的なStackクラスです。
template <class T>
class Stack
{
List<T> list;
public:
Stack();
Stack(const Stack<T>& otherStack);
~Stack();
}
Listクラス:
template <class T>
class List
{
ListItem<T> *head;
public:
List();
List(const List<T>& otherList);
~List();
}
これで、Listクラスのデストラクタは正常に機能しています。したがって、それを念頭に置いて、デストラクタの実装は次のとおりです。
template <class T>
Stack<T>::~Stack()
{
list.~List();
}
私はここで何が間違っているのですか?