C++继承一个模板类,模板类中嵌套一个类模板,在派生类中使用这个类模板,编译就出错了,求指点

class LIST
{
public:
template
struct NODE//就是这个类模板出错
{
V element;
NODE next;
NODE *prv;
NODE(const V & k):element(k){}
};
private:
NODE *start;
NODE *end;
int num;
LIST(const LIST &l) {}
LIST & operator=(const LIST &l) {}
protected:
NODE
& ptr_end() { return end; }
public:
LIST();
NODE* find(const T &ele);
bool insert(T &ele);
bool insert(T &ele,const NODEpos);
bool isempty()const;
void empty_LIST();
T get_element(const NODE
pos = end);
int size()const;
NODE* front()const { return start; }
NODE* tail()const { return end; }
~LIST();
};
////////////////////////////////////////////////////////////
//派生类
template
class STACK :public LIST
{
public:
STACK() :LIST() {}
~STACK() {}
bool isempty() { LIST::isempty(); }
T top();
bool push(const T &ele);
bool pop(T &ele);
int size()const;
};
template
T STACK::top()
{
LIST::NODE *P = LIST::tail();//在VS2017中提示这个NODE的
//错误 C7510 “NODE”: 模板 从属名称的使用必须以“模板”为前缀

return p->element;
}
///////////////////////完全不知道为什么

查看全部
qq_37303077
qq_37303077
2018/12/05 11:12
  • struct
  • c++
  • 继承
  • class
  • visual studio
  • 点赞
  • 收藏
  • 回答
    私信

1个回复