好的,所以我决定开始从我的 C++ 知识中扫除灰尘,并开始使用链表做一些简单的示例,但我遇到了一些错误。我的 Node 类是TestClass,我的链表是List;据我所知,这些问题与语法有关。
节点头:
#pragma once
class TestClass
{
public:
int x, y;
TestClass *next;
TestClass *prev;
TestClass();
TestClass(int,int);
~TestClass();
};
节点基类
#include "stdafx.h"
#include "TestClass.h"
TestClass::TestClass()
{
}
TestClass::TestClass(int _x, int _y)
{
x = _x;
y = _y;
}
TestClass::~TestClass()
{
}
标题列表类
#pragma once
class List
{
public:
TestClass *first;
TestClass *last;
List();
~List();
void AddNew(TestClass);
void PrintList();
};
列出基类
#include "stdafx.h"
#include "List.h"
#include "TestClass.h"
#include <iostream>
using namespace std;
List::List()
{
first = last = NULL;
}
List::~List()
{
}
void List::AddNew(TestClass node)
{
if (!first && !last)
{
*first = *last = node;
//first = last = &node;
}
else
{
TestClass *temp;
temp = last;
last = &node;
temp->next = last;
}
}
void List::PrintList()
{
TestClass *p = first;
while (p != NULL)
{
cout << p->x << " ";
p = p->next;
}
}
我收到大约 16 个错误,例如:
- List.cpp(基类)中的第一个未声明标识符,最后一个
- 语法错误:缺少 ';' 在 '*' 之前 -> List.h 声明 TestClass *last;
你能帮忙吗?