我进行了很多搜索以找到有关此主题的有用内容,但无济于事。我制作了一个运行良好的链接列表。现在,作为一项任务,我需要将一些字典单词存储在文件“input.txt”中。提到您必须使用二维链表进行此分配,即在链表的节点内创建另一个链表。这意味着链表的每个节点现在也将包含一个列表。这也可以用向量来完成,但我猜链表可能更有帮助。现在考虑代码。
//在list.h中
template <class T>
struct ListItem
{
T value;
ListItem<T> *next;
ListItem<T> *prev;
ListItem(T theVal)
{
this->value = theVal;
this->next = NULL;
this->prev = NULL;
}
};
template <class T>
class List
{
ListItem<T> *head;
public:
// Constructor
List();
// Destructor
~List();
}
我需要在节点内创建一个链表所以在“Struct ListItem”中我正在做这样的事情:
List<T> dictionary;
但它给出了一个错误:
"ISO C++ forbids declaration of âListâ with no type"
其次,我将如何开始在节点内创建另一个链表。我的意思是假设临时指针指向第一个链表的头部。我现在如何在该节点内创建另一个节点(属于我的第二个链表)。我想可能是这样的:
temp->ListItem<T>* secondListNode = new ListItem<T>(item); // I don't know whether
//It would or not as I am stuck in the first part.
这必须使用二维格式完成,所以请遵守约束。关于这个问题的任何其他有用的建议都会有所帮助。提前致谢。