如何在类类型内部实现类类型?

问题描述:

你知道如何在另一个类类型中做类类型吗? 假设我有一个LinkedList类,我想在里面做一个Node类。如何在类类型内部实现类类型?

class LinkedList 
{ 

class Node 
{ 
int val; 
Node *next; 
Node *prev; 

}; 

}; 

现在我想为Node类的.cpp文件中编写方法。我可以将它们写入LinkedList的.cpp文件吗,还是必须为节点创建一个新的.cpp文件? 我该怎么做?

+0

P.S我如何在LinkedList中为它所持有的Node对象创建一个指针? – Jjang 2012-04-03 10:05:49

自从我做C++以来已经有一段时间了,但如果我没有记错的话,你会把它们放在同一个.cpp文件中。关键是要定义它们包括含有类名:

Node* LinkedList::Node::getNext() { 
    return next; 
} 

你应该在这个看一看:Nested Class

这是演示如何声明嵌套类的例子。

+0

Thanks.P.S我该如何在LinkedList中为它所持有的Node对象创建一个指针? – Jjang 2012-04-03 10:06:02