类定义嵌套+模板,为什么不认识?

qianbaiyi0119 2008-10-25 09:53:09
[code=C/C++][template <typename T>
class List
{
private:
class Node
{
public:
Node(const T& d):data(d),next(NULL){};
Node():next(NULL){};
private:
Node* next;
T data;
};
Node* head;
int size;
public:
List(int); //constructor
List(int,T); //overload constructor
List(List&); //copy constructor哎呀,我还不会实现~~

void assign(T);
T Back();
Node* Back();
Node* Begin();
bool Empty();
int Size();

void Insert(int,T);
void Clear();

void Pop_back();
void Pop_front();
void Push_front(T);
void Push_back(T);

void Remove(T);
void Resize(int,T);

void Sort();
void Merge(List const&);

void Print();

};]
实现函数时,编译器死活都不认识 Node* Back(); Node* Begin();了,说Node不认识,连T都不认识了!
帮帮忙,谁能解答一下呢?
...全文
69 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
T Back();
Node* Back();
这两个一起定义都有问题了,根据函数重载的规定,这两个函数是一个函数,不能重载

64,281

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧