添加到队列结果失败

时间:2015-03-02 03:47:51

标签: c++ linked-list queue

我正在努力将一个项目添加到队列中,但总是会出现分段错误。

这是我的Node类:

    class Node{
private:
   int data;
   Node* next;
public:
   Node(int data);
   Node *getNext();
   void setNext(Node* next);
   int getData();
   void print();
   Node();
 };
   Node::Node(int data){this->data = data; this->next = NULL;}
   Node::Node(){this->data = 0; this->next = NULL;}
   void::Node::print(){cout << data;}
   Node*::Node::getNext(){return next;}
   int::Node::getData(){return data;}
   void::Node::setNext(Node* next){this->next = next;}

这是我的队列类:

   class Queue{
private:
   Node* head;
Node* tail;
  public:
void enter(int value);
Queue();
};


 Queue::Queue(){
  head = NULL;
  tail = NULL;
}

void Queue::enter(int item){
  Node* newNode = new Node(item);
  if(tail== NULL){
    head = newNode;
  }
  else{
    tail->setNext(newNode);
  }
  tail = newNode;
 }

这是主要的:

Queue* queue = new Queue;
queue->enter(5);

我被困在这里几个小时,无法弄清楚为什么......

    Node* newNode = new Node(item);

这是我得到分段错误的一行。

0 个答案:

没有答案