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

正文內(nèi)容

c語言程序設(shè)計教程(下)ppt-資料下載頁

2024-12-07 21:40本頁面
  

【正文】 ***** * * * 求一個班學(xué)生某門功課的總評成績 * ******************************************/ includeiostream using namespace std。 const int MaxN=100。 const double Rate=。 //平時成績比例 class Score { private: long No。 //學(xué)號 char *Name。 //姓名 int Peace。 //平時成績 int Final。 //期末考試成績 int Total。 //總評成績 public: Score(long=0,char* = NULL,int=0,int=0,int=0)。 //構(gòu)造函數(shù) void Count()。 //計算總評成績 void ShowScore()。 //顯示成績 }。 C++語言程序設(shè)計教程 第7章 類與對象 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 Score::Score(long no,char *name,int peace,int final,int total) //構(gòu)造函數(shù) { No=no。 Name=name。 Peace=peace。 Final=final。 Total=total。 } void Score::Count() { Total=Peace*Rate+Final*(1Rate)+。 } void Score::ShowScore() { coutNo\tName\tPeace\tFinal\tTotalendl。 } C++語言程序設(shè)計教程 第7章 類與對象 38 39 40 41 42 43 44 45 46 47 48 49 50 void main() { Score ClassScore1[3]。 Score ClassScore2[3]={Score(202207001,Tom,80,79), Score(202207002,John,90,85), Score(202207003,Wilson,70,55)}。 for(int i=0。i3。i++) ClassScore2[i].Count()。 for(i=0。i3。i++) ClassScore2[i].ShowScore()。 } 運行結(jié)果 : 202207001 Tom 80 79 80 202207002 John 90 85 88 202207003 Wilson 70 55 64 C++語言程序設(shè)計教程 第7章 類與對象 對象數(shù)組 動態(tài)對象 動態(tài)對象: 動態(tài)對象是指編程者隨時動態(tài)建立并 可隨時消失 的對象。 建立動態(tài)對象采用動態(tài)申請內(nèi)存的語句 new,刪除動態(tài)對象使用 delete語句。 建立一個動態(tài)對象的格式為: 對象指針 =new 類名 (初值表 ); C++語言程序設(shè)計教程 第7章 類與對象 ?注意 : ?對象指針的類型應(yīng)與類名一致。 ?動態(tài)對象存儲在 new語句從 堆 申請的空間中。 ?建立動態(tài)對象時要調(diào)用構(gòu)造函數(shù),當(dāng)初值表缺省時調(diào)用 默認的構(gòu)造函數(shù) 。 例如: Clock *Cp。 //建立對象指針 Cp=new Clock。 //建立動態(tài)對象,調(diào)用默認構(gòu)造函數(shù) Clock()。 CpShowTime()。 //結(jié)果為 0:0:0 Cp=new Clock(8,0,0)。 //建立動態(tài)對象,調(diào)用構(gòu)造函數(shù) Clock(int,int,int) CpShowTime()。 //結(jié)果為 8:0:0 C++語言程序設(shè)計教程 第7章 類與對象 動態(tài)對象 ?注意 : 函數(shù)體內(nèi)的局部對象在函數(shù)調(diào)用時建立,在函數(shù)調(diào)用完后消失;全局對象則在程序執(zhí)行時建立,執(zhí)行完成后才消失;這些對象在何時建立,何時消失是 C++規(guī)定好了的,不是編程者能控制的。 在堆中建立的動態(tài)對象不能自動消失,需要使用 delete語句刪除對象,格式為: 在刪除動態(tài)對象時,釋放堆中的內(nèi)存空間,在對象消失時,調(diào)用析構(gòu)函數(shù)。 例如: delete Cp。 //刪除 Cp指向的動態(tài)對象 動態(tài)對象的一個重要的使用方面是用動態(tài)對象組成動態(tài)對象數(shù)組,建立一個一維動態(tài)對象數(shù)組的格式為: 刪除一個動態(tài)對象數(shù)組的格式為: 在建立動態(tài)對象數(shù)組時,要調(diào)用構(gòu)造函數(shù),調(diào)用的次數(shù)與數(shù)組的大小相同;刪除對象數(shù)組時,要調(diào)用析構(gòu)函數(shù),調(diào)用次數(shù)與數(shù)組的大小相同。 C++語言程序設(shè)計教程 第7章 類與對象 動態(tài)對象 delete 對象指針; 對象指針 = new 類名 [數(shù)組大小 ]; delete [] 對象指針; 將 : C++語言程序設(shè)計教程 第7章 類與對象 動態(tài)對象 Score::SetScore(long no,char *name,int peace,int final,int total) { No=no。 Name=name。 Peace=peace。 Final=final。 Total=total。 } 將 : C++語言程序設(shè)計教程 第7章 類與對象 動態(tài)對象 SetScore()函數(shù)為動態(tài)數(shù)組設(shè)置初值。 void main() { Score * ClassScore。 ClassScore=new Score [3]。 ClassScore[0].SetScore(202207001,Tom,80,79), ClassScore[1].SetScore(202207002,John,90,85), ClassScore[2].SetScore(202207003,Wilson,70,55)。 for(int i=0。i3。i++) ClassScore[i].Count()。 for(i=0。i3。i++) ClassScore[i].ShowScore()。 delete [] ClassScore。 } This指針 一個類的成員函數(shù)中,有時希望引用調(diào)用的它對象,對此, C++采用隱含的 this指針來實現(xiàn)。 this指針是一個系統(tǒng)預(yù)定義的特殊指針,指向當(dāng)前對象,表示當(dāng)前對象的地址。 C++語言程序設(shè)計教程 第7章 類與對象 1 2 3 4 5 6 例如: void Clock::SetTime (int h, int m, int s) { H=h, M=m, S=s。 thisH=h, thisM=m, thisS=s。 (* this).H=h, (* this).M=m, (* this).S=s。 } // 語句 5是等效的 為了與類的數(shù)據(jù)成員 H、 M、 S區(qū)別,將 SetTime的形參名設(shè)為 h、 m、 s。如果使用 this指針,就可以憑 this指針區(qū)分本對象的數(shù)據(jù)成員與其他變量。 This指針 系統(tǒng)利用 this指針明確指出成員函數(shù)當(dāng)前操作的數(shù)據(jù)成員所屬的對象。實際上,當(dāng)一個對象調(diào)用其成員函數(shù)時,編譯器先將該 對象的地址賦給 this指針,然后調(diào)用成員函數(shù),這樣成員函數(shù)對對象的數(shù)據(jù)成員進行操作時,就 隱含 使用了 this指針。 一般而言,通常 不直接使用 this指針來引用對象成員,但在某些少數(shù)情況下,可以使用 this指針,如:重載某些運算符以實現(xiàn)對象的連續(xù)賦值等。 C++語言程序設(shè)計教程 第7章 類與對象 1 2 3 4 //使用 this指針 重新設(shè)計 的 SetTime()成員函數(shù)如下: void Clock::SetTime (int H, int M, int S) { thisH=H, thisM=M, thisS=S。 } ?注意 : ?this指針不是調(diào)用對象的名稱,而是指向調(diào)用對象的指針的名稱。 ?this的值不能改變,它總是指向當(dāng)前調(diào)用對象。 對象組合 組合概念體現(xiàn)的是一種 包含與被包含 的關(guān)系,在語義上表現(xiàn)為“ is part of”的關(guān)系,即在邏輯上 A是 B的一部分 。 在 C++程序設(shè)計中,類的組合用來描述一類復(fù)雜的對象,在類的定義中,它的某些屬性,往往是另一個類的對象,而不是像整型、浮點型之類的簡單數(shù)據(jù)類型,也就是“一個類內(nèi)嵌其它類的對象作為成員”,將對象嵌入到類中的這樣一種描述 復(fù)雜類 的方法,我們稱之為“類的組合”,一個含有其他類對象的類稱為 組合類 ,組合類的對象稱為 組合對象 。 組合類定義的步驟為: 先 定義成員類, 再 定義組合類。 C++語言程序設(shè)計教程 第7章 類與對象 對象組合 【 例 78】 計算某次火車的旅途時間。 分析 :某次火車有車次、起點站、終點站、出發(fā)時間、到達時間。前面定義的 Clock類正具有時間特性,因此,可以利用 Clock對象組合成一個火車旅途類 TrainTrip。假定火車均為 24小時內(nèi)到達,旅途時間為到達時間減出發(fā)時間。 用空方框表示類,灰框表示對象,組合類可以表示為空框包含灰框。設(shè)計 TrainTrip類的示意圖與成員構(gòu)成圖如圖 74: C++語言程序設(shè)計教程 第7章 類與對象 類名 成員名 H, M , S Clo c k S tartT i m e S e tT i m e (), S h o wT i m e () H, M , S Clo c k E n d T ime S e tT i m e (), S h o wT i m e () c h a r * T ra in NO T ra in T rip c lo c k T rip T i m e () T ra in T rip S tartT i m e En d T im e 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 2
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1