C++: node->getNextNode = head;报错。

“=”为左操作数,该怎么解决。啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊

这是一个实现链表节点的类啊,你是连getNextNode这方法的定义也没看懂么,这怎么能是一个左值,你究竟想实现什么东西。

getNextNode是一个函数吧

head = node->getNextNode();
是这个意思么

class Node
{
private:
int value;
Node * prevNode;
Node * nextNode;

public:
Node(int v) ;

void setPrevNode(Node * p);
void seeNextNode(Node * n); 

Node * getNextNode() ;
Node * getPrevNode();

void print();

};
Node::Node(int v) {
value = v;
prevNode = NULL;
nextNode = NULL;

}

void Node::setPrevNode(Node * p) {
prevNode = p;
}
void Node::seeNextNode(Node * n) {
nextNode = n;
}
Node*Node::getNextNode()
{
return nextNode;
}
Node*Node::getPrevNode()
{
return prevNode;
}

void Node::print()
{
cout << value << "\t";
}

class LinkList
{
private:
Node * head;
Node * value;

public:
LinkList(Node * headNode);

void insert(Node * node);
void del(Node * node);

Node * search(int key);

void print();

};
LinkList::LinkList(Node*headNode)
{

head = headNode;
}

void LinkList::insert(Node * node)
{
head = node->getNextNode() ;

if (head != NULL) {

     node=head->getPrevNode();

}
head = node;

NULL = node->getPrevNode;

}

Node * LinkList::search(int key)
{

Node * node;
node = head;
while (node != NULL && int(value) != key)
    node=node->getNextNode();
return  node;

}

void LinkList::del(Node * node)
{

if (node->getPrevNode() != NULL)
{

}
if (node->getNextNode() != NULL) {

}

}

改成==试试,要实现什么功能啊,是判断还是赋值呀