c++中,再将链表头指针赋给一个临时指针时报错
#include<iostream>
using namespace std;
class Linklist
{
public:
struct node //声明链表结点的结构体
{
int a;
struct node *next;
};
struct node*head;
void addnode(); //添加结点
Linklist(void);
~Linklist(void);
};
Linklist::Linklist(void)
{
head=NULL;
}
Linklist::~Linklist(void)
{
}
void Linklist::addnode() //添加结点的函数实现
{
struct node *temp=new struct node [1];
if(head==NULL)
{
head=temp;
head->next=NULL;
}
else
{
temp->next=head;
head=temp;
}
}
int main()
{
Linklist a;
struct node *temp=NULL; //申请一个struct node类型的指针
a.addnode(); //创建一个结点
temp=a.head; //将头指针赋给一个临时的指针,这时候就报错了
system("pause");
return 0;
}
在倒数第四行,“temp=a.head”处报错,说“不能讲Linklist::node类型的值分配到node类型的实体”
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
node是在Linklist内部声明的
struct node *temp=NULL;
中的node是一个为空的构造体,跟Linklist中的node不是同一个.它等价于: