在.h文件中,
7 using namespace std;
8
9 class DataStructure {
10 private:
11 struct ListNode {
12 int item;
13 ListNode *next;
14 };
15 int size;
16 ListNode *head;
17
18 public:
19 DataStructure(int N, vector<int> elements);
20
21 ListNode* findnode(int index);
22 void move(int index, int siz);
23
24 };
在.cpp文件中
26 DataStructure::ListNode* DataStructure::findnode(int index) {
27 ListNode *start;
28 start=head;
29
30 for (int i=1; i<index; i++)
31 start=start->next;
32
33 return start;
34 }
.line中的@line 26,错误:ListNode没有命名类型。 我很确定我做的一切都是正确的。烦人。 编辑:回复后,我更新了我的代码。
DataStructure.cpp:26:26: error: prototype for 'DataStructure::ListNode* DataStructure::findnode(int)' does not match any in class 'DataStructure'
DataStructure.h:17:18: error: candidate is: DataStructure::ListNode DataStructure::findnode(int)
答案 0 :(得分:2)
ListNode
在DataStructure
内定义,因此您必须对DataStructure::ListNode
函数的返回类型说findnode
。
答案 1 :(得分:0)
你应该写一个函数来填充你的struct
电话,然后定义findNone
。