




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1、C+中函數(shù)的聲明、定義、調(diào)用2、函數(shù)的參數(shù)和返回值 傳值、指針、引用 默認(rèn)參數(shù)3、函數(shù)重載4、內(nèi)聯(lián)函數(shù)本章要點(diǎn)類類型。C+語(yǔ)言與C語(yǔ)言最大的不同,在于C+語(yǔ)言增加了面向?qū)ο蟮母拍?。訪問控制。類的成員包含public、private和protected三類訪問控制。類和對(duì)象的關(guān)系。類是對(duì)象的模型,對(duì)象是類的實(shí)例。靜態(tài)成員。所有的類對(duì)象共享該類的靜態(tài)數(shù)據(jù)成員。靜態(tài)函數(shù)成員只能直接訪問類的靜態(tài)數(shù)據(jù)成員。結(jié)構(gòu)和聯(lián)合都是類。一位小學(xué)教師Ken希望完成這樣的任務(wù):(1) 針對(duì)于小學(xué)生正在學(xué)習(xí)四邊形(quadrangle)的特性,編寫一個(gè)小軟件,能夠隨機(jī)在屏幕上顯示矩形(rectangle)、正方形(s
2、quare)、平行四邊形(parallelogram)、梯形(trapezoid)和菱形(diamond)五種形體之一(2) 顯示該形體的(隨機(jī)產(chǎn)生)(3) 學(xué)生復(fù)習(xí)四邊形的特性,然后根據(jù)給出的關(guān)鍵數(shù)據(jù)計(jì)算四邊形的面積,軟件判斷其結(jié)果的正確性(4) 在學(xué)習(xí)過程中,軟件記錄產(chǎn)生的每一個(gè)四邊形,在學(xué)生選擇不再繼續(xù)后,將其學(xué)習(xí)的過程重放一遍,用以重溫,加深印象。 問題分析及建模 為了簡(jiǎn)化,我們暫時(shí)不考慮四邊形的圖形化表示,而只是用簡(jiǎn)單的關(guān)鍵參數(shù)來表示各種不同的四邊形。 計(jì)算四邊形的面積,判斷學(xué)生的計(jì)算是否正確; 為了便于學(xué)習(xí)過程重放,生成的每個(gè)四邊形需要存儲(chǔ)??梢杂面湵韥磉M(jìn)行存儲(chǔ)struct Par
3、allelogramstring name;int width, height;其他幾種類型的四邊形的定義與之類似其他幾種類型的四邊形的定義與之類似 為了能夠復(fù)習(xí),因此要求將生成的四邊形進(jìn)行存儲(chǔ),本設(shè)計(jì)采用列表的方式存儲(chǔ)。 回憶列表的關(guān)鍵:數(shù)據(jù)的存取、存儲(chǔ)的管理 最直觀的想法是采用來存儲(chǔ)四邊形?存儲(chǔ)的對(duì)象可能是不同類型的,怎么定義數(shù)組的類型考慮用數(shù)組存儲(chǔ)指針,這些指針分別指向不同類型的四邊形對(duì)象,地址用void * 類型來統(tǒng)一解決。?有多少個(gè)四邊形呢?即數(shù)組的大小怎么確定可以先估計(jì)一個(gè)四邊形的最大個(gè)數(shù),然后用一個(gè)游標(biāo)變量來表示生成四邊形的實(shí)際個(gè)數(shù)。struct List void *quadM
4、AXLEN; int len;3、形體和列表類型設(shè)計(jì)上的缺陷問題:程序代碼可以從列表中非常方便地提取出一個(gè)指針(如list.quad0等),但如何確定該指針指向的形體對(duì)象的類型?解決方法:重新定義一種新的類型Q,用于描述四邊形的結(jié)構(gòu)體從從Para * 類型到類型到 void * 類型的賦值類型的賦值會(huì)丟失類型信息會(huì)丟失類型信息5.1 問題引入數(shù)組的基礎(chǔ)類型指針是有類型的(假定為Q),這種類型從外表上看起來像是形體類型中的任何一個(gè),即它是一個(gè)結(jié)構(gòu)體,并且至少包含一個(gè)string類型的name成員struct Quadrangle string name;typedef Quadrangle *Q
5、UADPTR;存儲(chǔ)形式:list.quad0 = reinterpret_cast (¶);struct Node QUADPTR quad; Node *next;struct List Node *head,*tail;C風(fēng)格方案存在著幾個(gè)非常明顯的缺陷:對(duì)象的屬性與對(duì)象的行為是分離的,二者之間沒有明確而穩(wěn)固的聯(lián)系;對(duì)象的行為(函數(shù))成為主導(dǎo)者,對(duì)象反而成了被加工者。這與自然的思維有所區(qū)別;從信息安全的角度出發(fā),對(duì)象的屬性對(duì)其他所有客戶程序員(代碼的使用者)都是公開的,也就是不受保護(hù)的。C風(fēng)格程序的一種補(bǔ)風(fēng)格程序的一種補(bǔ)救方法救方法結(jié)構(gòu)體的類版本 Quadrangle Rectan
6、gle List結(jié)構(gòu)體和聯(lián)合體在結(jié)構(gòu)體和聯(lián)合體在C+中也是一種特殊中也是一種特殊的類類型的類類型給靜態(tài)成員函數(shù)一個(gè)對(duì)象參數(shù),指給靜態(tài)成員函數(shù)一個(gè)對(duì)象參數(shù),指明它需要操作哪個(gè)對(duì)象明它需要操作哪個(gè)對(duì)象。1. 計(jì)算器:Calculator2. 打印機(jī):Printer3. 數(shù)據(jù)5.8 解決方案面臨的問題:1) 將形體描述由結(jié)構(gòu)體版本改造成為類版本2) 不僅要統(tǒng)計(jì)Rectangle類對(duì)象的個(gè)數(shù),還要統(tǒng)計(jì)所有形體對(duì)象的數(shù)目5.8.1 形體類型的類版本5.8.2 列表類型的類版本p116游泳池過道97001,Lin Lin,F,19UML圖形標(biāo)識(shí)4.6Clock- Hour : int- Minute : int- Second : int+ ShowTime() : void+ SetTime(NewH : int = 0, NewM : int = 0, NewS : int = 0) : voidClockmyClock : Clock- Hour : int- Minute : int- Second : intmyClock : Clock類 A類
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 法學(xué)研究中的方法論與試題及答案
- 經(jīng)濟(jì)復(fù)蘇中的政策應(yīng)對(duì)試題及答案
- 班級(jí)科學(xué)知識(shí)普及活動(dòng)計(jì)劃
- 建立項(xiàng)目管理的標(biāo)準(zhǔn)流程計(jì)劃
- 數(shù)據(jù)驅(qū)動(dòng)決策的實(shí)施步驟計(jì)劃
- 2025關(guān)于項(xiàng)目管理咨詢服務(wù)委托合同示例
- 2025年公司競(jìng)爭(zhēng)策略與風(fēng)險(xiǎn)控制實(shí)務(wù)試題及答案
- 法學(xué)概論考試中如何選擇參考書目及試題及答案
- 品牌戰(zhàn)略規(guī)劃的常見誤區(qū)計(jì)劃
- 風(fēng)險(xiǎn)管理與組織結(jié)構(gòu)設(shè)計(jì)的關(guān)系試題及答案
- 《社區(qū)多元主體協(xié)同治理研究的國(guó)內(nèi)外文獻(xiàn)綜述》6700字
- 鋁電解基礎(chǔ)知識(shí)培訓(xùn)教材
- 2025年大學(xué)生人文知識(shí)競(jìng)賽題庫(kù)及答案(完整版)
- 上訴狀的課件
- 【合同范文】傳媒公司合作合同6篇
- 乳腺癌防治知識(shí)手冊(cè)運(yùn)動(dòng)與健康生活方式建議
- 2024年上海第二工業(yè)大學(xué)單招職業(yè)技能測(cè)試題庫(kù)附答案
- 《融資融券對(duì)企業(yè)創(chuàng)新的影響實(shí)證研究》11000字【論文】
- 預(yù)防肺癌健康教育
- 工業(yè)蒸汽生產(chǎn)安全操作規(guī)范
- 兒童發(fā)展問題的咨詢與輔導(dǎo)-案例1-5-國(guó)開-參考資料
評(píng)論
0/150
提交評(píng)論