【发布时间】:2015-11-24 00:25:42
【问题描述】:
我正在尝试运行此代码,但它引发了错误。想不通怎么解决。我是结构新手,我正在尝试制作链接列表程序。
错误:
S_linklist1.cpp: In member function ‘linklist::NODE linklist::create_node(int)’: S_linklist1.cpp:23:11:
error: could not convert ‘temp’ from ‘linklist::NODE*’ to ‘linklist::NODE’ return temp;
S_linklist1.cpp: In member function ‘void linklist::add(int)’: S_linklist1.cpp:35:7:
error: cannot convert ‘linklist::NODE’ to ‘linklist::NODE*’ in assignment temp1=create_node(data);
程序:
#include<iostream>
#include<cstdlib>
using namespace std;
class linklist{
private: struct NODE {
int data;
struct NODE* link;
};
struct NODE* START=NULL;
NODE create_node(int s_data)
{
struct NODE* temp;
temp=new NODE;
temp->data=s_data;
temp->link=NULL;
return temp;
}
public : void add(int);
};
void linklist :: add(int data)
{
struct NODE* temp1;
temp1=new NODE;
temp1=create_node(data);
cout<<"Return success"<<"\n";
}
int main()
{
linklist obj;
obj.add(10);
}
请帮我解决这个问题。谢谢
【问题讨论】:
-
这是错误 S_linklist1.cpp: In member function 'linklist::NODE linklist::create_node(int)': S_linklist1.cpp:23:11: error: could not convert 'temp' from 'linklist::NODE*' 到 'linklist::NODE' 返回 temp; ^ S_linklist1.cpp:在成员函数 'void linklist::add(int)' 中:S_linklist1.cpp:35:7:错误:无法在赋值 temp1=create_node 中将 'linklist::NODE' 转换为 'linklist::NODE*' (数据);
-
从评论中添加错误信息