<分区>
您好,我不确定我的代码是否不正确,我一直在搜索可以找到任何东西。
问题是:
为使用链表的栈类型用Java或C++写一个泛型类,命名为Stack 来存储元素。 Stack 类有一个名为 head 的成员变量,它引用了 列表的第一个节点,以及一个名为 size 的成员变量,用于存储元素的数量 在堆栈上。 Stack 类提供了 STL 堆栈类的所有方法,包括 推、弹出、顶部和空。
他们给节点类
template <typename T>
class Node {
public:
T nodeValue;
Node<T> *next;
Node (const T& item, Node<T> *ptr = NULL):
nodeValue(item), next(ptr)
{}
};
现在这是我写的 Stack 类:
template <typename T>
class Stack:public std::stack<Node>
{
public:
Node<T> *head;
T size;
Stack(const T& capacity, Node<T> *ptr):size(capacity),head(ptr){};
};
当我运行它时,我得到了这个:
error: type/value mismatch at argument 1 in template parameter list for ‘template<class _Tp, class _Sequence> class std::stack’