我有代码片段,我得到的错误表达式必须是可修改的L值。
node1.h
class node{
int data;
public:
node* next;
node(){}
void setdata(int a){data=a;}
char getdata(){return data;}
node* Next(){
return next;}
};
list.cpp
#include"node1.h"
#include<stdlib.h>
#include<iostream>
class list{
node* first;
public:
list(){first=NULL;}
void list::append(char data){
node * tmp=first;
node* newnode=new node;
newnode->setdata(data);
tmp->Next()=newnode;//line 1
tmp->next=newnode;//line 2
}
}
line1给出错误,表达式必须是可修改的l值,但是line1和line2应该做同样的事情吗?
答案 0 :(得分:0)
您无法更改Next
的值,因为它是一个函数。