已采纳回答 / Object_is_null
析构函数中应该是delete [] m_pQueue;QueueTraverse() 中循环结束条件应该是i<m_iHead+m_iQueueLenMyQueue.h头文件中多出了一个#endif // _DEBUG#ifndef 和 #endif 是一一对应的,条件编译。
2016-11-24
已采纳回答 / 黑巫师0
不引用的话,形参element就是一个临时变量,和传入的实参不是一个东西,它是存储在栈空间中的,当函数执行完成后将自动释放。导致的结果就是没有将出队的元素赋给实参element,而是赋给了那个临时变量element,随着函数执行完成也就一起消失了。并不能由实参element带回出队元素,出队也就失去了意义。
2016-11-24
已采纳回答 / 慕姐7449621
因为在这个队列中操作的是 顾客 这个类的对象,队列的每一个元素都是顾客,在使用 MyQueue *p=MyQueue(4)新建一个容量为4队列时,必须要在堆中申请一个对象数组的内存,也就是 m_pQueue=new Customer[4],指向一个对象数组的指针必须是对象指针,所以要将 int *m_pQueue改为 Customer *m_pQueue
2016-11-18
已采纳回答 / 暗夜公爵yk
#include "MyQueue.h"#include <iostream>using namespace std;MyQueue::MyQueue(int queueCapacity){ int m_iQueueCapacity=queueCapacity; //队列数组容量 ClearQueue(); m_pQueue=new int[m_iQueueCapacity];}MyQueue::~MyQueue(){ delete []m_pQueue; m_pQueue=NULL;}voi...
2016-10-18
已采纳回答 / kid123
这位同学问的貌似没有搞清楚函数和结构体是什么,就问了这个问题。函数是为了实现某一特定功能的。结构体是为了实现普通数据类型实现不了的,将多个普通数据类型合并在一起的新的数据类型。所以,函数是为了实现功能,结构体是为了定义新的数据。
2016-09-08
已采纳回答 / nju_zhq
因为在dequeue()这个函数里面对element这个参数进行了赋值操作,将m_iHead赋值给了element,如果你之前对队列进行了写操作,那输出的应该就是第一个元素,可能是你这些地方出了问题。
2016-08-29