error C2143: 语法错误: 缺少“;”(在“<”的前面)error C2143: 语法错误: 缺少“;”(在“<”的前面)error C2238: 意外的标记位于“;”之前

用vs2015遇到这样一个奇葩的错误
error C2143: 语法错误: 缺少“;”(在“<”的前面)error C2143: 语法错误: 缺少“;”(在“<”的前面)error C2238: 意外的标记位于“;”之前_第1张图片
图片怎么看怎么不清晰

error C2143: 语法错误: 缺少“;”(在“<”的前面)
note: 参见对正在编译的类 模板 实例化“LList”的引用
error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
error C2238: 意外的标记位于“;”之前
error C2143: 语法错误: 缺少“;”(在“<”的前面)
error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
error C2238: 意外的标记位于“;”之前
error C2143: 语法错误: 缺少“;”(在“<”的前面)
error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
error C2238: 意外的标记位于“;”之前

怎么回事,会有 ; 的错误
看源码

    Node<T>* pHead;
    Node<T>* pTail;
    Node<T>* pFence;

我就呵呵了
不认识Node就不认识呗
干嘛报这么让人看不懂的错误
真是的
把Node的声明贴上就没什么了

template<typename T>
class Node { public: T e; Node<T>* pNext; Node(Node<T>* p = nullptr) { pNext = p; } Node(T e, Node<T>* p) { this->e = e; pNext = p; } };

你可能感兴趣的:(vs2015报错)