已采納回答 / qq_谷是盛滿淚的眼_0
僅僅將元素賦值為0,0也是一個(gè)int 數(shù)值占據(jù)內(nèi)存空間,并未起到清空隊(duì)列的作用。清空隊(duì)列的時(shí)候已經(jīng)設(shè)置長度為零,再次插入數(shù)值的時(shí)候長度重新從零計(jì)數(shù),插入5個(gè)長度增到5,不會(huì)出現(xiàn)再次讀取的時(shí)候長度還是10 的情況
2017-08-22
已采納回答 / ForLemon
????假設(shè)一種情況,一個(gè)m_iQueueCapacity=4的隊(duì)列,經(jīng)過一系列入隊(duì)和出對(duì)操作,此時(shí)m_iHead=3,而m_tail=2,此時(shí)在3,0,1位置都有元素。????此時(shí)m_iQueueLen=3。如果是循環(huán)是for?(int?i?=?m_iHead;?i?<?m_iQueueLen ;?i++),循環(huán)次數(shù)m_iQueueLen-m_iHead=0,很明顯循環(huán)不能執(zhí)行。因?yàn)槲覀円h(huán)的次數(shù)是m_iQueueLen,也就是3。所以循環(huán)次數(shù)應(yīng)該是(m_iQueueLen + m_iHead)...
2017-06-27
已采納回答 / 慕九州2325515
并不是c++ 使用const聲明表示不可一被修改,好像有點(diǎn)像 Java 中final也是不可以被修改,Java中static也是靜態(tài)變量的意思,static類型可以被修改,那幾個(gè)成員函數(shù)中之所以加了const修飾,是為了保護(hù)對(duì)象的數(shù)據(jù)不會(huì)被修改,在函數(shù)中只能讀取對(duì)象數(shù)據(jù)并不可以修改。
2017-04-19
已采納回答 / qq_超人_18
系統(tǒng)按順序應(yīng)該先刪除customer的內(nèi)存,然后再是p的內(nèi)存。而customer的內(nèi)存是棧實(shí)例化的,所以只有執(zhí)行了return 0;后才會(huì)刪除。使用了delete p;會(huì)導(dǎo)致系統(tǒng)先刪除queue的內(nèi)存,順序不對(duì),所以執(zhí)行出現(xiàn)問題。所以不能加delete p;在結(jié)束整個(gè)程序后就會(huì)自動(dòng)刪除。我個(gè)人見解,刪除內(nèi)存主要運(yùn)用在一個(gè)程序沒有完結(jié)但一個(gè)類或函數(shù)已經(jīng)完結(jié)的情況下,可以減少內(nèi)存泄漏。如果整個(gè)程序都結(jié)束,就不存在內(nèi)存泄漏的問題了。
2017-04-15
已采納回答 / yasinSun
在 ?DeQueue() 出隊(duì) ? 函數(shù)部分有問題,判斷條件應(yīng)該是寫錯(cuò)了,應(yīng)該是 ?if (Queueempty()) , 而不是if (Queuefull())?
2017-04-03
已采納回答 / 黃亞彬
因?yàn)楸仨毐WC這空、滿、長度是一個(gè)常量(只讀),否則的話調(diào)用者能修改這些值,導(dǎo)致整個(gè)程序錯(cuò)亂,比如我們初始化一個(gè)長度為3的環(huán)形隊(duì)列,然后插入了3條數(shù)據(jù)(此時(shí)長度應(yīng)該為3),如果沒有const關(guān)鍵字,我們可以手動(dòng)去修改隊(duì)列的長度,這樣整個(gè)環(huán)形隊(duì)列就錯(cuò)亂了,const的作用就是保證那些只讀的屬性,不能被認(rèn)為修改,只能通過代碼邏輯修改回答完畢
2017-03-17
已采納回答 / 范更
一樣的,因?yàn)閿?shù)組名本來就是一個(gè)地址(該數(shù)組的第一個(gè)元素地址)加一個(gè)星號(hào)就成了指針,所以說是一樣的。
2017-02-28
已采納回答 / Jathy
數(shù)據(jù)結(jié)構(gòu)只是編程的一種編程設(shè)計(jì),用什么語言都可以,所以要用什么軟件就要根據(jù)用什么語言。比如說Java用Eclipse;C++或C用VC或DevC++等軟件;Eclipse也可以進(jìn)行C++/C編程希望能幫到你^.^
2016-12-18
已采納回答 / Ephraim
這個(gè)函數(shù)做到了兩個(gè)功能讓首元素出隊(duì)獲得出隊(duì)元素的值出隊(duì)這個(gè)好理解,第二個(gè)獲得首元素的值是我們加上去的,在實(shí)際應(yīng)用中,目的是為了知道它出隊(duì)的元素值是多少。當(dāng)然寫法有很多種,也可以以返回值的形式帶出,比如int DeQueue(void) {int element =m-iHead;.... //頭元素出隊(duì)return element;}這就像棧pop的時(shí)候,我們把棧中出棧的元素存到一個(gè)變量里,我們也會(huì)采取這種方式來獲得出棧元素,具體要不要這個(gè)功能,看我們了
2016-12-15