刚好在10分钟的那个位置出错了。
刚好在10分钟的那个位置出错了。
Customer的构造函数:
Customer::Customer()
{
m_strName = "";
m_iAge = 0;
}
Customer::Customer(string name, int age)
{
m_strName = name;
m_iAge = age;
}
Dequeue()代码:
bool MyQueue::Dequeue(Customer &element)
{
if(QueueEmpty())
{
cout << "Queue is Empty. No more actions needed." << endl;
return false;
}
else
{
element = m_pQueue[m_iHead];
m_iHead++;
m_iHead = m_iHead % m_iQueueCapacity; //回到第一个位置;
m_iQueueLen--;
return true;
}
}
然后执行代码:
Customer c4("",0);
Customer c5;
p->Dequeue(c4); //c4, c5都报错。
在执行p->Dequeue(c4)时,不管怎么样都会出现“程序已经停止运行”的那个错误提示框,然后返回值是:
Process terminated with status -1073741819 (0 minute(s), 5 second(s))。
但使用c4.printInfo()可以正常获得队列的那个值,后续再遍历也是对的。感觉整个代码都是完全搬下来的了,哪儿没对?