为啥我的代码一样,但是经过去取出首元素后遍历,打印结果和刚开始入队元素时的一样
主函数实现的代码
int main(void)
{
 MyQueue *p = new MyQueue(4);
 p->EnQueue(10);
 p->EnQueue(15);
 p->EnQueue(17);
 p->EnQueue(18);
 //p->EnQueue(20);
 p->QueueTraverse();
 int e = 0;
 p->DeQueue(e);
 cout << endl;
 cout << e << endl;
 p->DeQueue(e);
 cout << endl;
 cout << e << endl;
 cout << endl;
 p->QueueTraverse();
 p->ClearQueue();
 p->QueueTraverse();
 delete p;
 p = NULL;
 system("pause");
 return 0;
}
元素出队的函数代码
bool MyQueue::DeQueue(int &element)
{
 if (QueueEmpty())
 {
  return false;
 }
 else
 {
  element = m_pQueue[m_iHead];
  m_iHead++;
  m_iHead = m_iHead % m_iQueueCapacity;
  m_iQueueLen--;
  return true;
 }
}

 
                             
                            