下面是程序的一部分,有几个问题,求大神解释
class SnakeNode{
private:
int x,y;
SnakeNode *prior,*next;(什么意思?)
public:
void add_head(int x,int y);
int get_x();
int get_y();
void delete_tail();
}*head=NULL, *tail =NULL;(什么意思?)
void SnakeNode::add_head(int x,int y){
SnakeNode *q=new SnakeNode;(什么意思?)
q->x =x; q->y =y;(什么意思?)
q->next =head;
q->prior =NULL;
if(head) head->prior =q;
head =q;
if(!tail) tail =head;
f.game[x][y]= '*';
}
int SnakeNode::get_x(){
return x;
}
int SnakeNode::get_y(){
return y;
} void SnakeNode::delete_tail(){
SnakeNode *p =tail;
f.game[tail->get_x()][tail->get_y()]= ' ';
if(tail==head)
tail= head= NULL;
else{
tail= tail->prior;
tail->next= NULL;
}
delete p;
}
class SnakeNode{
private:
int x,y;
SnakeNode *prior,*next;(什么意思?)
public:
void add_head(int x,int y);
int get_x();
int get_y();
void delete_tail();
}*head=NULL, *tail =NULL;(什么意思?)
void SnakeNode::add_head(int x,int y){
SnakeNode *q=new SnakeNode;(什么意思?)
q->x =x; q->y =y;(什么意思?)
q->next =head;
q->prior =NULL;
if(head) head->prior =q;
head =q;
if(!tail) tail =head;
f.game[x][y]= '*';
}
int SnakeNode::get_x(){
return x;
}
int SnakeNode::get_y(){
return y;
} void SnakeNode::delete_tail(){
SnakeNode *p =tail;
f.game[tail->get_x()][tail->get_y()]= ' ';
if(tail==head)
tail= head= NULL;
else{
tail= tail->prior;
tail->next= NULL;
}
delete p;
}

不知道是不是对的