基于模板技術(shù)的多層次可視化數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)環(huán)境研究_第1頁(yè)
基于模板技術(shù)的多層次可視化數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)環(huán)境研究_第2頁(yè)
基于模板技術(shù)的多層次可視化數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)環(huán)境研究_第3頁(yè)
基于模板技術(shù)的多層次可視化數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)環(huán)境研究_第4頁(yè)
基于模板技術(shù)的多層次可視化數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)環(huán)境研究_第5頁(yè)
已閱讀5頁(yè),還剩110頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、.PAGE :.;精品課程建立資料基于模板技術(shù)的多層次可視化數(shù)據(jù)構(gòu)造實(shí)驗(yàn)環(huán)境研討可視化數(shù)據(jù)構(gòu)造實(shí)驗(yàn)環(huán)境VCDS v1.0編程實(shí)驗(yàn)C+版編號(hào):20050202A參考手冊(cè)合肥工業(yè)大學(xué)課程組2005年7月15日 DSSTL類庫(kù)1.1 DSSTL類庫(kù)概述數(shù)據(jù)構(gòu)造根底類模板庫(kù)。這是實(shí)驗(yàn)環(huán)境所用到的最重要也是最根底的類庫(kù),其中類名全部以大寫字母D開場(chǎng),在本文中將此類庫(kù)簡(jiǎn)稱為D類庫(kù)。D類庫(kù)全部以規(guī)范C+言語(yǔ)編寫,適宜于一切規(guī)范C+編譯器且不依賴第三方類庫(kù)。它定義了每種數(shù)據(jù)構(gòu)造的最根本的物理實(shí)現(xiàn)部分,提供了數(shù)據(jù)構(gòu)造最根本的邏輯操作,如堆棧的入棧和出棧,并采用了C+輸入輸出流機(jī)制對(duì)數(shù)據(jù)構(gòu)造進(jìn)展存儲(chǔ)。在數(shù)據(jù)層的設(shè)

2、計(jì)中表達(dá)了C+的虛承繼與承繼的特點(diǎn),采用模板技術(shù)實(shí)現(xiàn)多種數(shù)據(jù)類型的代碼封裝,大大減少了代碼的冗余,整個(gè)數(shù)據(jù)層的設(shè)計(jì)學(xué)習(xí)VC中的MFC類庫(kù)的特點(diǎn)到達(dá)了構(gòu)造明確,層次明晰,類與類之間的關(guān)系嚴(yán)密。由于整個(gè)軟件中的數(shù)據(jù)構(gòu)造較多有八大模塊,為了很好的實(shí)現(xiàn)類的層次架構(gòu),設(shè)計(jì)過(guò)程中設(shè)置了數(shù)據(jù)層基類DObject,然后根據(jù)詳細(xì)模塊設(shè)置相應(yīng)的類層次,其構(gòu)造框架見附錄一。1.2 DObject DOject是數(shù)據(jù)構(gòu)造規(guī)范摸班類庫(kù)DSSTL中一切類的基類,定義了許多公用的虛函數(shù)。這些虛函數(shù)有相當(dāng)一部分是純虛函數(shù),因此無(wú)法直接運(yùn)用DOject來(lái)聲明對(duì)象。常用的方法是運(yùn)用DOject指針。 1.2.1 類層次關(guān)系正像前

3、面引見的那樣,DObject是整個(gè)數(shù)據(jù)層的基類,包含著各個(gè)模塊的公共操作接口,是一個(gè)虛類。1.2.2 類成員virtual void Output(ostream& out) const;流輸出函數(shù),保管類中數(shù)據(jù)virtual void Input(istream& in);流輸入函數(shù),讀取數(shù)據(jù)virtual void Save(char* fname) const;將數(shù)據(jù)保管到文件中virtual void Load(char* fname);從文件中取出數(shù)據(jù)1.3線性表 1.3.1 DListDList是線性表邏輯類。它是詳細(xì)存儲(chǔ)類型線性表的基類,同樣它內(nèi)部封裝著底層詳細(xì)的線性表的公共操作

4、接口。 1.3.1.1類層次關(guān)系DObjectDList相關(guān)類:DObject頭文件:DList.h 成員闡明SetNull原型:void SetNull()用法:去除線性表內(nèi)容,無(wú)前往值。參數(shù):無(wú)例如: #include “DList.hvoid main() Dlist list ;list.SetNull();輸出:無(wú)RemoveAll原型:virtual void RemoveAll ()用法:將線性表中的數(shù)據(jù)全部移除,無(wú)前往值參數(shù):無(wú)例如:#include “DList.hvoid main() Dlist list ;list.RemoveAll();輸出:無(wú)IsEmpty原型:v

5、irtual bool IsEmpty ()const用法:判別線性表能否為空,前往類型為布爾型參數(shù):無(wú)例如:#include “DList.hvoid main() Dlist list ;list. IsEmpty ();輸出:ture或著falseLength原型:virtual int Length ()const用法:判別線性表的長(zhǎng)度,前往值為整型參數(shù):無(wú)例如:#include “DList.hvoid main() Dlist list ;list. Length ();輸出:整型數(shù)值Search原型:virtual int Search (const T&x)const用法:在線

6、性表中查找元素x,前往值為整型參數(shù):模板類型參數(shù)例如:#include “DList.hvoid main() Dlist list ;list. Search (23);輸出:在線性表中查到數(shù)據(jù)23所在的位置,查不到時(shí)前往-1。Insert原型:virtual void Insert( int k, const T&x)用法:在線性表中第k個(gè)位置插入元素x,無(wú)前往值參數(shù):模板類型參數(shù)例如:#include “DList.hvoid main() Dlist list ;list. Insert(2,56);輸出:無(wú)Delete原型:virtual void Delete (int k, T&

7、x)用法:刪除線性表中的第k個(gè)元素,將刪除的元素放到變量x中,前往值無(wú)參數(shù):模板類型參數(shù)可以是整型,字符型,雙精度類型,字符串類型等。例如:#include “DList.hvoid main() Dlist list ;list. Delete(2,35);輸出:無(wú) 1.3.2 DListSeqDListSeq是線性表模板類,此類命名規(guī)那么是由于存儲(chǔ)構(gòu)造是順序表構(gòu)造。它是線性表的詳細(xì)實(shí)現(xiàn)的類。1.3.2.1類層次關(guān)系DOjectDListDListSeq相關(guān)類:Doject,DList頭文件:DListSeq.h1.3.2.2成員闡明SetNull原型:void SetNull()用法:去除

8、線性表內(nèi)容,無(wú)前往值。參數(shù):無(wú)例如: #include “DListSeq.hvoid main() DlistSeq listseq ;listseq.SetNull();輸出:無(wú)參閱:DList:SetNullRemoveAll原型:void RemoveAll ()用法:刪除順序表存儲(chǔ)的線性表中的一切數(shù)據(jù),前往值無(wú)參數(shù):無(wú)例如:#include “DListSeq.hvoid main() DlistSeq listseq ;listseq.RemoveAll();輸出:無(wú)參閱:DList:RemoveAllSet原型:void Set( int MaxListSeqSize, bool

9、 copy = true )用法:重新設(shè)置順序表線性表的最大長(zhǎng)度,前往值無(wú)參數(shù):MaxListSeqSize:設(shè)置順序表存儲(chǔ)的線性表的最大長(zhǎng)度,布爾變量:copy為true時(shí),將原線性表中的數(shù)據(jù)拷貝到設(shè)置為新長(zhǎng)度的線性表中,否那么該線性表清空,最大長(zhǎng)度設(shè)置為MaxListSeqList例如:#include “DListSeq.hvoid main() DlistSeq listseq ;listseq.Set(10,true);輸出:無(wú)IsEmpty原型:virtual bool IsEmpty ()const用法:判別線性表能否為空,前往類型為布爾型參數(shù):無(wú)例如:#include “DLi

10、stSeq.hvoid main() DlistSeq listSeq ;listSeq. IsEmpty ();輸出:ture:線性表空或著false:線性表不為空參閱:DList:IsEmptyLength原型:virtual int Length ()const用法:判別線性表的長(zhǎng)度,前往值為整型參數(shù):無(wú)例如:#include “DListSeq.hvoid main() DlistSeq listSeq ;listSeq. Length ();輸出:整型數(shù)值參閱:DList:LengthSearch原型:virtual int Search (const T&x)const用法:在線性

11、表中查找元素x,前往值為整型參數(shù):模板類型參數(shù)針對(duì)對(duì)象建立的類型而確定例如:#include “DListSeq.hvoid main() DlistSeq listSeq ;listSeq. Search (a);輸出:在線性表中查到字符型數(shù)據(jù)a的位置,查找失敗時(shí)前往-1。Insert原型:virtual void Insert( int k, const T&x)用法:在線性表中第k個(gè)位置插入元素x,無(wú)前往值參數(shù):模板類型參數(shù):根據(jù)建立的對(duì)象類型而定例如:#include “DListSeq.hvoid main() DlistSeq listSeq ;listSeq. Insert(6,

12、y);輸出:無(wú)Delete原型:virtual void Delete (int k, T&x)用法:刪除線性表中的第k個(gè)元素,將刪除的元素放到變量x中,前往值無(wú)參數(shù):模板類型參數(shù)可以是整型,字符型,雙精度類型,字符串類型等。例如:#include “DList.hvoid main() Dlist list ; char x;list. Delete(2,x);輸出:無(wú)參閱:DList:DeleteGet原型:virtual bool Get( int k, T &x ) const用法:取順序表存儲(chǔ)的線性表中的第k個(gè)元素,將該元素放到變量x中,前往值為布爾值參數(shù):第一個(gè)參數(shù):表示線性表中的

13、第k個(gè)位置,第二個(gè)參數(shù)模板類型參數(shù)可以是整型,字符型,雙精度類型,字符串類型等。例如:#include “DListSeq.hvoid main() DlistSeq lisSeq ; char x;list. Get(2,x);輸出:true或著falseoperator原型:T &operator( int i )用法:重載運(yùn)算符,取順序表存儲(chǔ)的線性表中下標(biāo)是i的元素,前往值為建立對(duì)象的數(shù)據(jù)類型參數(shù):表示線性表中的第i個(gè)位置的數(shù)據(jù)例如:#include “DListSeq.hvoid main() DlistSeq lisSeq ; char x;x = listSeqi;輸出:前往第i個(gè)

14、數(shù)據(jù)Output原型:void Output( ostream &out)const用法:將數(shù)據(jù)以流的方式輸出,無(wú)前往值參數(shù):out輸出流變量。例如:#include “DListSeq.hvoid main() DlistSeq listSeq ; ofstream outFile ( “d:li1.txt) ; listSeq.Output( outFile ) ;輸出:無(wú)Input原型:void Input( istream &in)用法:將數(shù)據(jù)以流的方式輸入,無(wú)前往值參數(shù):in輸入流變量。例如:#include “DListSeq.hvoid main() DlistSeq listS

15、eq ; ifstream inFile ( “d:li1.txt) ; listSeq.Input( inFile ) ;輸出:無(wú)闡明:Input和OutPut兩個(gè)函數(shù)接口普通不在數(shù)據(jù)層運(yùn)用,而運(yùn)用在視化框架中的導(dǎo)入導(dǎo)出操作中。1.4棧1.4.1 DStack1.4.1.1類層次關(guān)系DOjectDStack相關(guān)類:DOject頭文件:DStack.h1.4.1.2成員闡明Push原型:bool Push(T item)=0用法:將數(shù)據(jù)item 入棧,純虛函數(shù)在子類中實(shí)現(xiàn)。前往值為布爾值。參數(shù):入棧數(shù)據(jù),類型與建立的對(duì)象數(shù)據(jù)類型一致Pop原型:bool Pop(T &value)=0用法:將棧

16、頂數(shù)據(jù)出棧放到變量value中,前往值為布爾值。參數(shù):出棧數(shù)據(jù)所放位置的變量,類型與建立的對(duì)象數(shù)據(jù)類型一致Length原型:int Length() const=0用法:前往棧中數(shù)據(jù)長(zhǎng)度,純虛函數(shù)在子類中實(shí)現(xiàn)。前往值:整型。參數(shù):無(wú)GetTop原型:T GetTop()=0用法:取棧頂數(shù)據(jù),純虛函數(shù)在子類中實(shí)現(xiàn)。前往值:前往棧頂數(shù)據(jù),數(shù)據(jù)類型為建立的對(duì)象的數(shù)據(jù)類型。參數(shù):無(wú)IsEmpty原型:bool IsEmpty() const用法:判別棧能否為空,純虛函數(shù)在子類中實(shí)現(xiàn)。前往值為布爾值。參數(shù):無(wú)Clear原型:bool Clear()用法:清空棧,純虛函數(shù)在子類中實(shí)現(xiàn)。前往值為布爾值。參數(shù)

17、:無(wú)GetNodeNum原型:virtual int GetNodeNum() const=0用法:純虛函數(shù),供在子類中被重載,前往值為整型。參數(shù):無(wú)Input原型:virtual void Input( istream &in)=0用法:純虛函數(shù),供在子類中被重載,前往值無(wú)。參數(shù):流輸入?yún)?shù)Output原型:virtual void Output( ostream &out)const用法:虛函數(shù),供在子類中被重載,前往值無(wú)。參數(shù):流輸出參數(shù)1.4.2 DstackSeq1.4.2.1類層次關(guān)系DOjectDStackDStackSeq相關(guān)類:Doject,DStack頭文件:DStack.

18、h1.4.1.2成員闡明Push原型:bool Push(T item)用法:將數(shù)據(jù)item 入棧,前往值為布爾值。參數(shù):入棧數(shù)據(jù),類型與建立的對(duì)象數(shù)據(jù)類型一致例如: #include “DStack.hvoid main() DstackSeq stackSeq; Dstring x; Cin x;stackSeq.Push(x);輸出:入棧操作勝利前往true,否那么為false參閱:Dstack:PushPop原型:bool Pop(T &value)用法:將棧頂數(shù)據(jù)出棧放到變量value中,前往值為布爾值。參數(shù):出棧數(shù)據(jù)所放位置的變量,類型與建立的對(duì)象數(shù)據(jù)類型一致例如: #includ

19、e “DStack.hvoid main() DstackSeq stackSeq; Dstring x; stack.Seq.Pop(x);輸出:出棧操作勝利前往true,否那么為false參閱:Dstack:PopLength原型:int Length() const用法:前往棧中數(shù)據(jù)長(zhǎng)度,前往值:整型。參數(shù):無(wú)例如: #include “DStack.hvoid main() DstackSeq stackSeq; stack.Seq.Length();輸出:棧長(zhǎng)度:整型值參閱:DList:Length,DlistSeq:Length,Dstack:LengthGetTop原型:T Ge

20、tTop()用法:取棧頂數(shù)據(jù),前往值:前往棧頂數(shù)據(jù),數(shù)據(jù)類型為建立的對(duì)象的數(shù)據(jù)類型。參數(shù):無(wú)例如: #include “DStack.hvoid main() DstackSeq stackSeq; Dstring strData; StrData = stackSeq.GetTop();輸出:棧頂數(shù)據(jù)IsEmpty原型:bool IsEmpty() const用法:判別棧能否為空,前往值為布爾值。參數(shù):無(wú)例如: #include “DStack.hvoid main() DstackSeq stackSeq; stack.Seq.IsEmpty();輸出:false 表示棧不空,否那么為空參

21、閱:DList:IsEmpty, DlistSeq:IsEmpty,Dstack:IsEmptyClear原型:bool Clear()用法:清空棧,前往值為布爾值。參數(shù):無(wú)例如: #include “DStack.hvoid main() DstackSeq stackSeq; stackSeq.Clear();輸出:前往值為true 表示棧被清空GetNodeNum原型:virtual int GetNodeNum() const用法:獲得棧中數(shù)據(jù)個(gè)數(shù),前往值為整型。參數(shù):無(wú)例如:#include “DStack.hvoid main() DstackSeq stackSeq; int x

22、; x = stackSeq.GetNodeNum();輸出:前往值為true 表示棧被清空參閱:Dstack:GetNodeNumInput原型:virtual void Input( istream &in)用法:以流的方式讀入數(shù)據(jù),前往值無(wú)。參數(shù):流輸入?yún)?shù)參閱:DList:Input,DlistSeq:Input,Dstack:InputOutput原型:virtual void Output( ostream &out)const用法:以流的方式保管數(shù)據(jù),前往值無(wú)。參數(shù):流輸出參數(shù)參閱:DList:Output,DlistSeq:Output,Dstack:OutputSetData

23、原型:void SetData(T data,int NodeNum)用法:將棧中第NodeNum個(gè)數(shù)據(jù)設(shè)置為data值,前往值無(wú)。參數(shù):無(wú)例如: #include “DStack.hvoid main() DstackSeq stackSeq; stackSeq.SetData(x,stack.Length()-1);輸出:無(wú)參閱:DList:Inseart, DlistSeq:InseartInput_i原型:void Input_i( int NodeNum,istream &in)用法:以流的方式讀入第NodeNum個(gè)數(shù)據(jù),前往值無(wú)。參數(shù):流輸入?yún)?shù)Output_i原型:void Ou

24、tput_i( int NodeNum,ostream &out)用法:以流的方式取出第NodeNum個(gè)數(shù)據(jù),前往值無(wú)。參數(shù):流輸出參數(shù)1.4.3DstackLink1.4.3.1類層次關(guān)系DOjectDStackDStackLink相關(guān)類:Doject,DStack頭文件:DStack.h1.4.3.2成員闡明Push原型:bool Push(T item)用法:將數(shù)據(jù)item 入棧,前往值為布爾值。參數(shù):入棧數(shù)據(jù),類型與建立的對(duì)象數(shù)據(jù)類型一致例如: #include “DStack.hvoid main() DstackLink *stackLink; Dstring x; Cin x;S

25、tackLink-Push(x);輸出:入棧操作勝利前往true,否那么為false參閱:Dstack:Push, DstackSeq:PushPop原型:bool Pop(T &value)用法:將棧頂數(shù)據(jù)出棧放到變量value中,前往值為布爾值。參數(shù):出棧數(shù)據(jù)所放位置的變量,類型與建立的對(duì)象數(shù)據(jù)類型一致例如: #include “DStack.hvoid main() DstackLink* stackLink; Dstring x; stack.Link-Pop(x);輸出:出棧操作勝利前往true,否那么為false參閱:Dstack:Pop, DstackSeq:PopLength原

26、型:int Length() const用法:前往棧中數(shù)據(jù)長(zhǎng)度,前往值:整型。參數(shù):無(wú)例如: #include “DStack.hvoid main() DstackLink * stackLink; stack.Link-Length();輸出:棧長(zhǎng)度:整型值參閱:DList:Length,DlistLink:Length,Dstack:Length, DstackSeq:LengthGetTop原型:T GetTop()用法:取棧頂數(shù)據(jù),前往值:前往棧頂數(shù)據(jù),數(shù)據(jù)類型為建立的對(duì)象的數(shù)據(jù)類型。參數(shù):無(wú)例如: #include “DStack.hvoid main() DstackLink*

27、stackLink; Dstring strData; StrData = stackLink-GetTop();輸出:棧頂數(shù)據(jù)參閱:DstackSeq:GetTopIsEmpty原型:bool IsEmpty() const用法:判別棧能否為空,前往值為布爾值。參數(shù):無(wú)例如: #include “DStack.hvoid main() DstackLink* stackLink; stack.Link-IsEmpty();輸出:false 表示棧不空,否那么為空參閱:DList:IsEmpty, DlistLink:IsEmpty,Dstack:IsEmpty, DstackSeq:IsEm

28、ptyClear原型:bool Clear()用法:清空棧,前往值為布爾值。參數(shù):無(wú)例如: #include “DStack.hvoid main() DstackLink* stackLink; stackLink-Clear();輸出:前往值為true 表示棧被清空參閱:DstackSeq:ClearGetNodeNum原型:virtual int GetNodeNum() const用法:獲得棧中數(shù)據(jù)個(gè)數(shù),前往值為整型。參數(shù):無(wú)例如:#include “DStack.hvoid main() DstackLink* stackLink; int x; x = stackLink-GetN

29、odeNum();輸出:前往值為true 表示棧被清空參閱:Dstack:GetNodeNum, DstackSeq:GetNodeNumInput原型:virtual void Input( istream &in)用法:以流的方式讀入數(shù)據(jù),前往值無(wú)。參數(shù):流輸入?yún)?shù)參閱:DList:Input,DlistLink:Input,Dstack:Input, DstackSeq:InputOutput原型:virtual void Output( ostream &out)const用法:以流的方式保管數(shù)據(jù),前往值無(wú)。參數(shù):流輸出參數(shù)參閱:DList:Output,DlistLink:Outpu

30、t,Dstack:Output, DstackSeq:OutputSetData原型:void SetData(T data,int NodeNum)用法:將棧中第NodeNum個(gè)數(shù)據(jù)設(shè)置為data值,前往值無(wú)。參數(shù):無(wú)例如: #include “DStack.hvoid main() DstackLink* stackLink; stackLink-SetData(x,stack.Length()-1);輸出:無(wú)參閱:DList:Inseart, DlistLink:Inseart,DstackSeq:SetDataInput_i原型:void Input_i( int NodeNum,is

31、tream &in)用法:以流的方式讀入第NodeNum個(gè)數(shù)據(jù),前往值無(wú)。參數(shù):流輸入?yún)?shù)參閱:DstackSeq:Input_iOutput_i原型:void Output_i( int NodeNum,ostream &out)用法:以流的方式取出第NodeNum個(gè)數(shù)據(jù),前往值無(wú)。參數(shù):流輸出參數(shù)參閱:DstackSeq:Output_i闡明:DstackSeq與DstackLink 所具有的函數(shù)接口實(shí)現(xiàn)效果一致,由于存儲(chǔ)構(gòu)造不同,因此實(shí)現(xiàn)詳細(xì)內(nèi)容不同。1.5隊(duì)列 1.5.1 DQueue1.5.1.1類層次關(guān)系DOjectDQueue相關(guān)類:DOject頭文件:DQueue.h1.5.1

32、.2 成員闡明EnQueue原型:virtual bool EnQueue(T item)=0用法:將數(shù)據(jù)item 入隊(duì),純虛函數(shù)在子類中實(shí)現(xiàn)。前往值為布爾值。參數(shù):入棧數(shù)據(jù),類型與建立的對(duì)象數(shù)據(jù)類型一致DeQueue原型:virtual bool DeQueue(T &value)=0用法:取出隊(duì)首數(shù)據(jù)放到變量value中,前往值為布爾值。參數(shù):出隊(duì)列數(shù)據(jù)所放位置的變量,類型與建立的對(duì)象數(shù)據(jù)類型一致GetHead 原型:virtual T GetHead()=0用法:取隊(duì)首數(shù)據(jù),純虛函數(shù)在子類中實(shí)現(xiàn)。前往值為建立對(duì)象的類型。參數(shù):無(wú)GetRear原型:virtual T GetRear()=

33、0用法:取隊(duì)尾數(shù)據(jù),前往值為取到的隊(duì)尾數(shù)據(jù),類型為建立對(duì)象的類型。參數(shù):無(wú)Length原型:int Length() const=0用法:前往棧中數(shù)據(jù)長(zhǎng)度,純虛函數(shù)在子類中實(shí)現(xiàn)。前往值:整型。參數(shù):無(wú)IsEmpty原型:bool IsEmpty() const用法:判別棧能否為空,純虛函數(shù)在子類中實(shí)現(xiàn)。前往值為布爾值。參數(shù):無(wú)Clear原型:bool Clear()用法:清空棧,純虛函數(shù)在子類中實(shí)現(xiàn)。前往值為布爾值。參數(shù):無(wú)GetNodeNum原型:virtual int GetNodeNum() const=0用法:純虛函數(shù),供在子類中被重載,前往值為整型。參數(shù):無(wú)Input原型:virtu

34、al void Input( istream &in)=0用法:純虛函數(shù),供在子類中被重載,前往值無(wú)。參數(shù):流輸入?yún)?shù)Output原型:virtual void Output( ostream &out)const用法:虛函數(shù),供在子類中被重載,前往值無(wú)。參數(shù):流輸出參數(shù)1.5.2 DQueueSeq1.5.2.1類層次關(guān)系DOjectDQueueDQueueSeq相關(guān)類:Doject,DQueue頭文件:DQueue.h1.5.2.2成員闡明GetHead原型:T GetHead()用法:取隊(duì)首元素,前往值:前往所取隊(duì)首數(shù)據(jù),類型為建立對(duì)象所對(duì)應(yīng)的類型。參數(shù):無(wú)例如: #include “D

35、Queue.hvoid main() DQueueSeq QueueSeq; Dstring x; x = QueueSeq. GetHead ();輸出:前往所取隊(duì)首數(shù)據(jù)參閱:DQueue: GetHeadGetRear原型:T GetRear()用法:取隊(duì)尾數(shù)據(jù),前往值:前往所取隊(duì)尾數(shù)據(jù),數(shù)據(jù)類型與所見對(duì)象類型一致。參數(shù):無(wú)例如: #include “DQueue.hvoid main() DQueueSeq QueueSeq; Dstring x; x = QueueSeq.GetRear();輸出:前往所取隊(duì)尾數(shù)據(jù)參閱:DQueue:GetRearEnQueue原型:bool EnQu

36、eue (T item)用法:將數(shù)據(jù)item 入隊(duì)列,前往值為布爾值。參數(shù):入隊(duì)列數(shù)據(jù),類型與建立的對(duì)象數(shù)據(jù)類型一致例如: #include “DQueue.hvoid main() DQueueSeq QueueSeq; Dstring x; Cin x;QueueSeq. EnQueue (x);輸出:入隊(duì)操作勝利前往true,否那么為false參閱:DQueue: EnQueueDeQueue原型:bool DeQueue(T &value)用法:將隊(duì)首數(shù)據(jù)出隊(duì)列放到變量value中,前往值為布爾值。參數(shù):出隊(duì)列數(shù)據(jù)所放位置的變量,類型與建立的對(duì)象數(shù)據(jù)類型一致例如: #include “

37、DQueue.hvoid main() DQueueSeq QueueSeq; Dstring x; QueueSeq.DeQueue(x);輸出:出隊(duì)操作勝利前往true,否那么為false參閱:DQueue:DeQueueLength原型:int Length() const用法:前往隊(duì)列中數(shù)據(jù)長(zhǎng)度,前往值:整型。參數(shù):無(wú)例如: #include “DQueue.hvoid main() DQueueSeq QueueSeq; QueueSeq. Length();輸出:隊(duì)列長(zhǎng)度:整型值參閱:DList:Length,DlistSeq:Length,DQueue:LengthIsEmpty

38、原型:bool IsEmpty() const用法:判別隊(duì)列能否為空,前往值為布爾值。參數(shù):無(wú)例如: #include “DQueue.hvoid main() DQueueSeq QueueSeq; QueueSeq.IsEmpty();輸出:false 表示棧不空,否那么為空參閱:DList:IsEmpty, DlistSeq:IsEmpty,Dstack:IsEmpty,DQueue:IsEmptyClear原型:bool Clear()用法:清空隊(duì)列,前往值為布爾值。參數(shù):無(wú)例如: #include “DQueue.hvoid main() DQueueSeq QueueSeq; Qu

39、eueSeq.Clear();輸出:前往值為true 表示隊(duì)列被清空GetNodeNum原型:virtual int GetNodeNum() const用法:獲得隊(duì)列中數(shù)據(jù)個(gè)數(shù),前往值為整型。參數(shù):無(wú)例如:#include “DQueue.hvoid main() DQueueSeq QueueSeq; int x; x = QueueSeq.GetNodeNum();輸出:前往值為true 表示隊(duì)列被清空參閱:DQueue:GetNodeNum, Dstack:GetNodeNumInput原型:virtual void Input( istream &in)用法:以流的方式讀入數(shù)據(jù),前往

40、值無(wú)。參數(shù):流輸入?yún)?shù)參閱:DList:Input,DlistSeq:Input,DQueue:Input, Dstack:InputOutput原型:virtual void Output( ostream &out)const用法:以流的方式保管數(shù)據(jù),前往值無(wú)。參數(shù):流輸出參數(shù)參閱:DList:Output,DlistSeq:Output,DQueue:Output, Dstack:OutputSetData原型:void SetData(T data,int NodeNum)用法:將隊(duì)列中第NodeNum個(gè)數(shù)據(jù)設(shè)置為data值,前往值無(wú)。參數(shù):無(wú)例如: #include “DQueue.

41、hvoid main() DQueueSeq QueueSeq; QueueSeq.SetData(x,QueueSeq.Length()-1);輸出:無(wú)參閱:DList:Inseart, DlistSeq:Inseart, Dstack:SetDataInput_i原型:void Input_i( int NodeNum,istream &in)用法:以流的方式讀入第NodeNum個(gè)數(shù)據(jù),前往值無(wú)。參數(shù):流輸入?yún)?shù)參閱:Dstack:Input_iOutput_i原型:void Output_i( int NodeNum,ostream &out)用法:以流的方式取出第NodeNum個(gè)數(shù)據(jù),

42、前往值無(wú)。參數(shù):流輸出參數(shù)參閱:Dstack:Output_i1.5.3 DQueueLink1.5.3.1類層次關(guān)系DOjectDQueueDQueueLink相關(guān)類:Doject,DQueue頭文件:DQueue.h1.5.3.2成員闡明GetHead原型:T GetHead()用法:取隊(duì)首元素,前往值:前往所取隊(duì)首數(shù)據(jù),類型為建立對(duì)象所對(duì)應(yīng)的類型。參數(shù):無(wú)例如: #include “DQueue.hvoid main() DQueueLink* QueueLink; Dstring x; x = QueueLink-GetHead ();輸出:前往所取隊(duì)首數(shù)據(jù)參閱:DQueue: Get

43、Head, DqueuqSeq:GetHeadGetRear原型:T GetRear()用法:取隊(duì)尾數(shù)據(jù),前往值:前往所取隊(duì)尾數(shù)據(jù),數(shù)據(jù)類型與所見對(duì)象類型一致。參數(shù):無(wú)例如: #include “DQueue.hvoid main() DQueueLink* QueueLink; Dstring x; x = QueueLink-GetRear();輸出:前往所取隊(duì)尾數(shù)據(jù)參閱:DQueue:GetRear, DqueuqSeq:GetRearEnQueue原型:bool EnQueue (T item)用法:將數(shù)據(jù)item 入隊(duì)列,前往值為布爾值。參數(shù):入隊(duì)列數(shù)據(jù),類型與建立的對(duì)象數(shù)據(jù)類型一致

44、例如: #include “DQueue.hvoid main() DQueueLink* QueueLink; Dstring x; Cin x;QueueLink-EnQueue (x);輸出:入隊(duì)操作勝利前往true,否那么為false參閱:DQueue: EnQueue. DqueuqSeq:EnQueueDeQueue原型:bool DeQueue(T &value)用法:將隊(duì)首數(shù)據(jù)出隊(duì)列放到變量value中,前往值為布爾值。參數(shù):出隊(duì)列數(shù)據(jù)所放位置的變量,類型與建立的對(duì)象數(shù)據(jù)類型一致例如: #include “DQueue.hvoid main() DQueueLink* Queu

45、eLink; Dstring x; QueueLink-DeQueue(x);輸出:出隊(duì)操作勝利前往true,否那么為false參閱:DQueue:DeQueue, DqueuqSeq:DeQueueLength原型:int Length() const用法:前往隊(duì)列中數(shù)據(jù)長(zhǎng)度,前往值:整型。參數(shù):無(wú)例如: #include “DQueue.hvoid main() DQueueLink* QueueLink; QueueLink-Length();輸出:隊(duì)列長(zhǎng)度:整型值參閱:DList:Length,DlistSeq:Length,DQueue:Length, DqueuqSeq:Lengt

46、hIsEmpty原型:bool IsEmpty() const用法:判別隊(duì)列能否為空,前往值為布爾值。參數(shù):無(wú)例如: #include “DQueue.hvoid main() DQueueLink* QueueLink; QueueLink-IsEmpty();輸出:false 表示棧不空,否那么為空參閱:DList:IsEmpty, DlistSeq:IsEmpty,Dstack:IsEmpty,DQueue:IsEmpty, DqueuqSeq:IsEmptyClear原型:bool Clear()用法:清空隊(duì)列,前往值為布爾值。參數(shù):無(wú)例如: #include “DQueue.hvoi

47、d main() DQueueLink* QueueLink; QueueLink-Clear();輸出:前往值為true 表示隊(duì)列被清空參閱:Dstack:Clear, DqueuqSeq:ClearGetNodeNum原型:virtual int GetNodeNum() const用法:獲得隊(duì)列中數(shù)據(jù)個(gè)數(shù),前往值為整型。參數(shù):無(wú)例如:#include “DQueue.hvoid main() DQueueLink* QueueLink; int x; x = QueueLink-GetNodeNum();輸出:前往值為true 表示隊(duì)列被清空參閱:DQueue:GetNodeNum, D

48、stack:GetNodeNum, DqueuqSeq:GetNodeNumInput原型:virtual void Input( istream &in)用法:以流的方式讀入數(shù)據(jù),前往值無(wú)。參數(shù):流輸入?yún)?shù)參閱:DList:Input,DlistSeq:Input,DQueue:Input, Dstack:Input, DqueuqSeq:InputOutput原型:virtual void Output( ostream &out)const用法:以流的方式保管數(shù)據(jù),前往值無(wú)。參數(shù):流輸出參數(shù)參閱:DList:Output,DlistSeq:Output,DQueue:Output, Ds

49、tack:Output, DqueuqSeq:OutputSetData原型:void SetData(T data,int NodeNum)用法:將隊(duì)列中第NodeNum個(gè)數(shù)據(jù)設(shè)置為data值,前往值無(wú)。參數(shù):無(wú)例如: #include “DQueue.hvoid main() DQueueLink* QueueLink; QueueLink-SetData(x,QueueLink.Length()-1);輸出:無(wú)參閱:DList:Inseart, DlistSeq:Inseart, Dstack:SetData, DqueuqSeq:SetDataInput_i原型:void Input_

50、i( int NodeNum,istream &in)用法:以流的方式讀入第NodeNum個(gè)數(shù)據(jù),前往值無(wú)。參數(shù):流輸入?yún)?shù)參閱:Dstack:Input_i, DqueuqSeq:Input_iOutput_i原型:void Output_i( int NodeNum,ostream &out)用法:以流的方式取出第NodeNum個(gè)數(shù)據(jù),前往值無(wú)。參數(shù):流輸出參數(shù)參閱:Dstack:Output_i, DqueuqSeq:Output_i1.5.4 DQueueCyc1.5.4.1類層次關(guān)系DOjectDQueueDQueueCyc相關(guān)類:Doject,DQueue頭文件:DQueue.h1

51、.5.4.2成員闡明IsInQueue原型:bool IsInQueue(int k)const用法:判別下標(biāo)k能否在循環(huán)隊(duì)列中,前往值:布爾類型。參數(shù):字符指針:文件名例如: #include “DQueue.hvoid main() DQueueCyc QueueCyc; QueueCyc.IsInQueue(3);輸出:下標(biāo)k在循環(huán)體中時(shí)前往true,否那么前往false.Save原型:virtual void Save(char * fname)用法:將循環(huán)隊(duì)列數(shù)據(jù)保管到文件fname中,前往值無(wú)。參數(shù):字符指針:文件名例如: #include “DQueue.hvoid main()

52、 DQueueCyc QueueCyc; QueueCyc.Save (“d:dqueuecyc.txt);ChangBodyLength原型:virtual void ChangBodyLength(int len)用法:重新設(shè)置循環(huán)隊(duì)列長(zhǎng)度,前往值無(wú)。參數(shù):整型:設(shè)置整型值例如: #include “DQueue.hvoid main() DQueueCyc QueueCyc; QueueCyc.ChangBodyLength(QueueCyc.Length()+5);GetHead原型:T GetHead()用法:取隊(duì)首指針front后一個(gè)元素,前往值:前往所取隊(duì)首數(shù)據(jù),類型為建立對(duì)象所

53、對(duì)應(yīng)的類型。參數(shù):無(wú)例如: #include “DQueue.hvoid main() DQueueCyc QueueCyc; Dstring x; x = QueueCyc.GetHead ();輸出:前往所取隊(duì)首數(shù)據(jù)參閱:DQueue: GetHead, DqueuqSeq:GetHead,DqueueLink:GetHeadGetRear原型:T GetRear()用法:取隊(duì)尾指針?biāo)赶虻臄?shù)據(jù),前往值:前往所取隊(duì)尾數(shù)據(jù),數(shù)據(jù)類型與所見對(duì)象類型一致。參數(shù):無(wú)例如: #include “DQueue.hvoid main() DQueueCyc QueueCyc; Dstring x; x

54、= QueueCyc.GetRear();輸出:前往所取隊(duì)尾數(shù)據(jù)參閱:DQueue:GetRear, DqueuqSeq:GetRear, DqueueLink:GetRearEnQueue原型:bool EnQueue (T item)用法:將數(shù)據(jù)item 入隊(duì)列,前往值為布爾值。參數(shù):入隊(duì)列數(shù)據(jù),類型與建立的對(duì)象數(shù)據(jù)類型一致例如: #include “DQueue.hvoid main() DQueueCyc QueueCyc; Dstring x; Cin x;QueueCyc.EnQueue (x);輸出:入隊(duì)操作勝利前往true,否那么為false參閱:DQueue: EnQueue

55、. DqueuqSeq:EnQueue, DqueueLink:EnQueueDeQueue原型:bool DeQueue(T &value)用法:將隊(duì)首數(shù)據(jù)出隊(duì)列放到變量value中,前往值為布爾值。參數(shù):出隊(duì)列數(shù)據(jù)所放位置的變量,類型與建立的對(duì)象數(shù)據(jù)類型一致例如: #include “DQueue.hvoid main() DQueueCyc QueueCyc; Dstring x; QueueCyc.DeQueue(x);輸出:出隊(duì)操作勝利前往true,否那么為false參閱:DQueue:DeQueue, DqueuqSeq:DeQueue, DqueueLink:DeQueueLen

56、gth原型:int Length() const用法:前往隊(duì)列中數(shù)據(jù)長(zhǎng)度,前往值:整型。參數(shù):無(wú)例如: #include “DQueue.hvoid main() DQueueCycQueueCyc; QueueCyc.Length();輸出:隊(duì)列長(zhǎng)度:整型值參閱:DList:Length,DlistSeq:Length,DQueue:Length, DqueuqSeq:LengthIsEmpty原型:bool IsEmpty() const用法:判別隊(duì)列能否為空,前往值為布爾值。參數(shù):無(wú)例如: #include “DQueue.hvoid main() DQueueCyc QueueCyc;

57、 QueueCyc.IsEmpty();輸出:false 表示隊(duì)列不空,否那么為空參閱:DList:IsEmpty, DlistSeq:IsEmpty,Dstack:IsEmpty,DQueue:IsEmpty, DqueuqSeq:IsEmpty, DqueueLink:IsEmptyIsFull原型:bool IsFull()用法:判別隊(duì)列能否已滿,前往值為布爾值。參數(shù):無(wú)例如: #include “DQueue.hvoid main() DQueueCyc QueueCyc; QueueCyc.IsFull();輸出:false 表示循環(huán)隊(duì)列不空,否那么已滿Clear原型:bool Cl

58、ear()用法:清空隊(duì)列,前往值為布爾值。參數(shù):無(wú)例如: #include “DQueue.hvoid main() DQueueCyc QueueCyc; QueueCyc.Clear();輸出:前往值為true 表示隊(duì)列被清空參閱:Dstack:Clear, DqueuqSeq:Clear, DqueueLink:ClearGetNodeNum原型:virtual int GetNodeNum() const用法:獲得隊(duì)列中數(shù)據(jù)個(gè)數(shù),前往值為整型。參數(shù):無(wú)例如:#include “DQueue.hvoid main() DQueueCyc QueueCyc; int x; x = Queu

59、eCyc.GetNodeNum();輸出:隊(duì)列中的數(shù)據(jù)個(gè)數(shù)參閱:DQueue:GetNodeNum, Dstack:GetNodeNum, DqueuqSeq:GetNodeNum, DqueueLink:GetNodeNumInput原型:virtual void Input( istream &in)用法:以流的方式讀入數(shù)據(jù),前往值無(wú)。參數(shù):流輸入?yún)?shù)參閱:DList:Input,DlistSeq:Input,DQueue:Input, Dstack:Input, DqueuqSeq:Input, DqueueLink:InputOutput原型:virtual void Output(

60、ostream &out)const用法:以流的方式保管數(shù)據(jù),前往值無(wú)。參數(shù):流輸出參數(shù)參閱:DList:Output,DlistSeq:Output,DQueue:Output, Dstack:Output, DqueuqSeq:Output, DqueueLink:OutputSetData原型:void SetData(T data,int NodeNum)用法:將隊(duì)列中第NodeNum個(gè)數(shù)據(jù)設(shè)置為data值,前往值無(wú)。參數(shù):無(wú)例如: #include “DQueue.hvoid main() DQueueCyc QueueCyc; QueueCyc.SetData(x,QueueCyc

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論