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

正文內(nèi)容

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

2025-11-28 21:40本頁(yè)面
  

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