freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

unit8—參數(shù)化程序設(shè)計(jì)—第六章模板-資料下載頁

2025-09-20 19:42本頁面

【導(dǎo)讀】未調(diào)用基類的,而是調(diào)用派生類的Calculate()。關(guān)系必須在運(yùn)行時(shí)確定,體現(xiàn)了運(yùn)行時(shí)多態(tài)性。數(shù),它調(diào)用虛函數(shù)Calculate()實(shí)現(xiàn)計(jì)算。析構(gòu)函數(shù)說明為虛函數(shù),自動(dòng)調(diào)用派生類析構(gòu)函數(shù),然后釋放動(dòng)態(tài)內(nèi)存。

  

【正文】 ename T,int size int seqlistT,size::Find(T amp。 x)const {//const成員函數(shù),表明對(duì) 象的 數(shù)據(jù)只能讀不能寫。 int i=0。 while(i=last amp。amp。 slist[i]!=x) i++。 //順序查找是否有 x if (ilast) return 1。 //未找到,返回 1 else return i。 //找到,返回下標(biāo) } 例 順序表類模板設(shè)計(jì) template typename T,int size bool seqlistT,size::IsIn(T amp。 x){ int i=0。 bool found=0。 while(i=last amp。amp。 !found) //換了一種方法來查找 if (slist[i]!=x) i++。 else found=1。 //找到 return found。} template typename T,int size Tamp。 seqlistT,size::operator[] (int i){ if(ilast+1||i0||i=Maxsize){ cout下標(biāo)出界! endl。 exit(1)。 } if(ilast) last++。 return slist[i]。 } 例 順序表類模板設(shè)計(jì) assert(!(ilast+1||i0||i=Maxsize))。 有沒有其他方式? template typename T,int size bool seqlistT,size::Insert(T amp。 x, int i) { int j。 if (i0||ilast+1||last==Maxsize 1) return false。 //插入位置不合理,不能插入(健壯性) else{ last++。 for(j=last。ji。j) slist[j]=slist[j1]。 //從表最后位置向前依次后移,空出指定位置來 slist[i]=x。 return true。 } } 例 順序表類模板設(shè)計(jì) template typename T,int sizebool seqlistT,size::Remove(T amp。 x){ int i=Find(x),j。 //先去找 x在哪個(gè)位置 if(i=0){ last。 for(j=i。j=last。j++) slist[j]=slist[j+1]。 //依次前移,保證表連續(xù) return true。 } return false。 //表中不存在 x } 例 順序表類模板設(shè)計(jì) template typename T,int size int seqlistT,size::Next(T amp。 x){ int i=Find(x)。 if(i=0 amp。amp。 ilast) return i+1。 //x后繼位置 else return 1。 //x不在表中,或在表末尾 } template typename T,int size int seqlistT,size::Prior(T amp。 x){ int i=Find(x)。 if(i0 amp。amp。 i=last) return i1。 //x前驅(qū)的位置 else return 1。 } 例 順序表類模板設(shè)計(jì) int main(){ seqlist int,100 seqlisti。 //seqlisti的元素為整型 int i,j,k,a[10]={2,3,5,7,11,13,17,19,23,29}。 for(j=0。j10。j++) //把素?cái)?shù)寫入 if (!(a[j],j)){ cout“表太小放 不下了 !endl。 break。 } j=()。 for(i=0。ij。i++) cout(i)39。 39。 cout endl 。 //打印出 []素?cái)?shù)表 for(j=0。j10。j++) seqlisti[j]=0。 //采 用下標(biāo)運(yùn)算符運(yùn)算 for(j=0。j10。j++) coutseqlisti[j]39。 39。 coutendl。 for(j=0。j10。j++) seqlisti[j]=a[j]。 例 順序表類模板設(shè)計(jì) seqlisti[10]=31。 //檢驗(yàn)?zāi)?否增加元素 for(j=0。j11。j++) coutseqlisti[j]39。 39。 coutendl。 k=7。 if ((k)) cout7在表 中 endl。 //因形參為引用,所以實(shí)參不可用整數(shù)常量 7 else cout 7不 在表 中 endl。 k=17。 if ( (k)) cout刪 除 17endl。 //刪除 17 else cout找不 到 17,無法刪除 。 j=( ) 。 for (i=0。ij。i++) cout(i) 39。 39。 //打印剩下的素?cái)?shù) coutendl。 例 順序表類模板設(shè)計(jì) if ((k,j1)){ // 把素?cái)?shù) 17裝回去 ,成功則打印 j= ( )。 for (i=0。ij。i++) cout(i) 39。 39。 coutendl。 } cout打印 17后一個(gè)素 數(shù) : “ ((k))endl。 cout打印 17前一個(gè)素 數(shù) : ((k))endl。 cout素?cái)?shù) 17在表中位置(下標(biāo)) 為 : (k)endl。 if(( )) cout表是空的 endl。 else cout表不空 endl。 if (()) cout表是滿的 endl。 else cout表也不滿 endl。 if ((k)) cout素?cái)?shù) 17在表中 endl。 return 0。 } 例 順序表類模板設(shè)計(jì) Unit 8— 第 六 章 模板 模板與數(shù)據(jù)結(jié) 構(gòu) — 鏈表、棧、隊(duì) 模板與類參數(shù) 索引查找與指針數(shù)組 函數(shù)指針與指針識(shí)別(選讀) 類模板與排序查找
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1