我已经在Java中完成了一个链表,我正在尝试将代码转换为C ++,因为我的下一课将完全使用C ++。这是我的代码,如下所示。你能看一看吗?我已经绘制了图表和内容,这对我来说很有意义,但似乎没有工作。不知道。
#include <iostream>
using namespace std;
class Node{
public:
int data;
Node* next;
Node(int d){
data = d;
next = NULL;
}
};
class LinkedList{
private:
Node* n;
Node* t;
Node* Header = NULL;
int length = 0;
public:
void append(int d){
if (Header == NULL){
n = new Node(d);
Header = n;
t = n;
length++;
}
else{
n = new Node(d);
t->next = n;
t = n;
length++;
}
}
void printList(){
if (Header == NULL){
cout << "Nothing to print" << endl;
return;
}
Node* n = Header;
while (n != NULL){
cout << n->data + " ";
n = n->next;
}
}
};
int main(){
LinkedList a;
a.append(1);
a.append(2);
a.append(3);
a.printList();
cout << "Hello World" << endl;
}
答案 0 :(得分:1)
更改
cout << n->data + " ";
到
cout << n->data << " ";
C ++与Java不同,你不能将C风格的字符串附加到int。