第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

求大神看看哪里出錯了

求大神看看哪里出錯了

#ifndef?MYQUEUE_H #define?MYQUEUE_H class?MyQueue { public: MyQueue(int?queueCapacity);??????//InitQueu(&Q) ???創(chuàng)建隊(duì)列 virtual?~MyQueue(); //DestroyQueue(&Q)???銷毀隊(duì)列 void?ClearQueue(); //ClearQueue(&Q)???????清空隊(duì)列 bool?QueueEmpty()?const; //QueueEmmpty(Q)?????判空隊(duì)列 bool?QueueFull()?const; //判滿隊(duì)列 int?QueueLength()?const; //QueueLength(Q) 對列長度 bool?EnQueue(int?element); //EnQueue(&Q,?element)????新元素入隊(duì) bool?DeQueue(int?&element); //DeQueue(&Q,?&element)????首元素出列 void?QueueTraverse(); //QueueTraverse(Q,?visit())?????遍歷隊(duì)列 private: int?*m_pQueue; //隊(duì)列數(shù)組指針 int?m_iQueueLen; //隊(duì)列元素個數(shù) int?m_iQueueCapacity; //隊(duì)列數(shù)組容量 int?m_iHead; int?m_iTail; }; #endif; #include?"MyQueue.h" #include?<iostream> using?namespace?std; MyQueue::MyQueue(int?queueCapacity) { m_iQueueCapacity?=?queueCapacity; //m_iHead?=?0; //m_iTail?=?0; //m_iQueueCapacity?=?0; m_pQueue?=?new?int[m_iQueueCapacity]; ClearQueue(); } MyQueue::~MyQueue() { delete?[]m_pQueue; m_pQueue?=?NULL; } void?MyQueue::ClearQueue() { m_iHead?=?0; m_iTail?=?0; m_iQueueCapacity?=?0; } bool?MyQueue::QueueEmpty()?const { if?(m_iQueueLen?==?0) { return?true; } else { return?false; } //return?m_iQueueLen?==?0???trur?:false; } int?MyQueue::QueueLength()?const { return?m_iQueueLen; } bool?MyQueue::QueueFull()?const { if?(m_iQueueLen?==?m_iQueueCapacity) { return?true; } else?return?false; } bool?MyQueue::EnQueue(int?element) { if?(QueueFull()) { return?false; } else { m_pQueue[m_iTail]?=?element; m_iTail++; m_iTail?=?m_iTail?%?m_iQueueCapacity; m_iQueueLen++; return?true; } } 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; } } void?MyQueue::QueueTraverse() { for?(int?i?=?m_iHead;?i?<?m_iQueueLen?+?m_iHead;?i++) { cout?<<?m_pQueue[i%m_iQueueCapacity]?<<?endl; } }#include <stdlib.h>#include "MyQueue.h"#include <iostream>using namespace std;int main(void){ MyQueue *p = new MyQueue(10); p->EnQueue(10); p->EnQueue(12); p->EnQueue(16); p->EnQueue(18); //p->EnQueue(20); p->QueueTraverse(); int e = 0; p->DeQueue(e); cout << e << endl; p->DeQueue(e); cout << e << endl; p->QueueTraverse(); p->ClearQueue(); p->QueueTraverse(); p->EnQueue(20); p->EnQueue(30); p->QueueTraverse(); delete p; p = NULL; system("pause"); return 0;}
查看完整描述

1 回答

?
MinRam

TA貢獻(xiàn)87條經(jīng)驗(yàn) 獲得超24個贊

額,不知道你是否找到了錯誤結(jié)果

?類中的? ??void?ClearQueue(); 函數(shù)有問題

void?MyQueue::ClearQueue()
{
????m_iHead?=?0;
????m_iTail?=?0;
????m_iQueueCapacity?=?0;???/*????m_iQueuecapacity?按照定義為該隊(duì)列的容量。(一旦定義不可改,除非銷毀)
??????????????????????????????????而你定義的ClearQueue()應(yīng)該是清空隊(duì)列的元素。
??????????????????????????????????故此處應(yīng)該是?把隊(duì)列的元素長度初始化為0。
??????????????????????????????????更正:??m_iQueueLen?=?0;
?????????????????????????????*/
}

錯誤體現(xiàn):

在類的構(gòu)造函數(shù)中:

MyQueue::MyQueue(int?queueCapacity)
{
????m_iQueueCapacity?=?queueCapacity;
????//m_iHead?=?0;
????//m_iTail?=?0;
????//m_iQueueCapacity?=?0;
????m_pQueue?=?new?int[m_iQueueCapacity];
????ClearQueue();??????//此處進(jìn)入錯誤的?ClearQueue()隊(duì)列清空函數(shù),將m_iQueueCapacity隊(duì)列容量?設(shè)置為0。
}

在主函數(shù)的

p->EnQueue(10);?
//---------->?進(jìn)入下面?EnQueue(int?element)
bool?MyQueue::EnQueue(int?element)
{
????if?(QueueFull())
????{
????????return?false;
????}
????else
????{
????????m_pQueue[m_iTail]?=?element;
????????m_iTail++;
????????m_iTail?=?m_iTail?%?m_iQueueCapacity;???//此處報錯,?m_iTail?=?1?%?0,?構(gòu)造時候m_iQueueCapacity已經(jīng)設(shè)為0。?????%?0?的錯誤。
????????m_iQueueLen++;
????????return?true;
????}
?
}


查看完整回答
反對 回復(fù) 2016-11-13
  • 1 回答
  • 0 關(guān)注
  • 1531 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號