版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
電子科技大學(xué)計(jì)算機(jī)學(xué)院C++程序設(shè)計(jì)語言黃迪明
1第一章C++入門一、面向?qū)ο蟮姆椒ㄊ窃谟?jì)算機(jī)語言發(fā)展過程中產(chǎn)生的。
早期:機(jī)器語言、匯編語言
50年代中期:FORTRAN語言引進(jìn)了許多現(xiàn)代仍然使用的程序設(shè)計(jì)概念。
50年代后期:ALGOL60提出塊結(jié)構(gòu)的思想。
60年代:SIMULA67首先提出對象和類的概念,并支持類的繼承,是面向?qū)ο笳Z言的鼻祖
70年代:ADA不能全面地支持繼承,稱為基于對象的語言?!?.1面向?qū)ο蟮挠蓙砗桶l(fā)展后來出現(xiàn)的Smalltalk是最有影響的面向?qū)ο蟮恼Z言之一。80年代中后期以后,隨著面向?qū)ο蟮某绦蛟O(shè)計(jì)語言的廣泛應(yīng)用,出現(xiàn)了更多的面向?qū)ο蟮恼Z言。
面向?qū)ο蟮恼Z言可分為以下兩類:1、開發(fā)全新的面向?qū)ο蟮恼Z言O(shè)bject—CEiffelSmalltalk802、對傳統(tǒng)語言進(jìn)行面向?qū)ο蟮臄U(kuò)展,稱為混合型語言,其代表有C++語言。增加面向?qū)ο蟪绦蛟O(shè)計(jì)的支持支持傳統(tǒng)的面向過程的程序設(shè)計(jì)C++CC++語言具有C語言的豐富的應(yīng)用基礎(chǔ)和開發(fā)環(huán)境的支持,對于已經(jīng)掌握C語言的人講,更易學(xué)易普及。二、從C到C++C語言是貝爾實(shí)驗(yàn)室為DEC公司開發(fā)PDP系列計(jì)算機(jī)操作系統(tǒng)時(shí)研制的。C作為UNIX操作系統(tǒng)的開發(fā)語言而廣為應(yīng)用和流行。1989年制定為ANSIC標(biāo)準(zhǔn)。1、語言簡潔、緊湊,使用方便、靈活。2、運(yùn)算符和數(shù)據(jù)類型豐富。3、訪問內(nèi)存地址、寄存器、進(jìn)行位操作,具有匯編語言的功能。4、生成的目標(biāo)代碼質(zhì)量高、程序運(yùn)行效率高。C語言的獨(dú)有特點(diǎn)是:局限:1、對類型的檢查機(jī)制相對較弱、程序中的一些錯誤不能在編譯時(shí)發(fā)現(xiàn);2、無支持代碼重用的語言結(jié)構(gòu);3、當(dāng)程序規(guī)模達(dá)到一定的程度時(shí),難以控制程序的復(fù)雜性;為滿足管理程序復(fù)雜性需要,1980年,貝爾實(shí)驗(yàn)室對C進(jìn)行了改進(jìn)和擴(kuò)充:“帶類的C”C1983年取名為C++,后經(jīng)過三次修訂。1994年制定了ANSIC++標(biāo)準(zhǔn)的草案。1、C++是C的擴(kuò)展,C是C++的子集,C++包括C的全部特征、屬性和優(yōu)點(diǎn)。同時(shí),增加了對面向?qū)ο缶幊痰耐耆С帧?、與C一致,C++程序結(jié)構(gòu)采用函數(shù)驅(qū)動機(jī)制實(shí)現(xiàn)。3、C++實(shí)現(xiàn)了類的封裝,數(shù)據(jù)隱藏、繼承及多態(tài),使其代碼可重用并容易維護(hù)。4、C++是一門高效使用的程序設(shè)計(jì)語言,既可進(jìn)行過程化程序設(shè)計(jì),又可進(jìn)行面向?qū)ο蟪绦蛟O(shè)計(jì)。C++的特點(diǎn)在面向過程的程序設(shè)計(jì)中,程序是處理數(shù)據(jù)的一系列過程。過程(或函數(shù))定義為實(shí)現(xiàn)特定功能的一組指令。其主要設(shè)計(jì)思想是功能分解并逐步求精。數(shù)據(jù)與程序過程分開存儲,編程的主要技巧在于關(guān)注模塊之間的調(diào)用關(guān)系及數(shù)據(jù)的變化?!?.2面向過程的程序設(shè)計(jì)1、當(dāng)數(shù)據(jù)量增大時(shí),數(shù)據(jù)與處理這些數(shù)據(jù)的方法之間的分離使程序變得越來越難以理解。2、相對于老問題的新方法都要帶來額外的開銷,程序的可重用性小。面向過程程序設(shè)計(jì)的主要缺點(diǎn)
面向?qū)ο笙蟪绦蛟O(shè)設(shè)計(jì)OOP(Object-OrientedProgramming)的三要素:對象、類類和繼承承面向?qū)ο笙蟪绦蛟O(shè)設(shè)計(jì)的實(shí)實(shí)現(xiàn)需要要:封裝和數(shù)數(shù)據(jù)隱藏藏技術(shù)繼承和多多態(tài)性技技術(shù)§1.3面面向?qū)ο蟪绦蛐蛟O(shè)計(jì)1、封裝裝和數(shù)據(jù)據(jù)隱藏什么是對對象?概念上::在問題題空間中中,將客客觀世界界的實(shí)體體稱為對對象。對對象可以以是人、、物、事事件、規(guī)規(guī)則、概概念等。。例如:開開發(fā)一個(gè)個(gè)商品銷銷售系統(tǒng)統(tǒng)。實(shí)現(xiàn)上::把數(shù)據(jù)據(jù)和處理理數(shù)據(jù)的的過程((操作或或方法))當(dāng)成一一個(gè)整體體,這個(gè)個(gè)封裝體體就稱為為對象。。數(shù)據(jù)1…….數(shù)據(jù)n操作1…….操作n狀態(tài)(數(shù)據(jù)結(jié)構(gòu)和值)方法對象的模模型結(jié)構(gòu)構(gòu)例如:電電腦裝配配聲卡,,早點(diǎn)銷銷售點(diǎn)無須知道道封裝體體內(nèi)部是是如何工工作就能能使用的的思想稱為為數(shù)據(jù)隱隱藏。對象實(shí)現(xiàn)現(xiàn)了信息息隱藏;;對象與外外部通過過操作接接口聯(lián)系系,操作作接口提提供了對象象的功能能,操作作的具體體實(shí)現(xiàn)外外部是不不可見的。對象之間間是通過過消息傳傳遞信息息。對象是由由特定的的類創(chuàng)造造的,什什么是類類?類是創(chuàng)建建對象的的樣板,,它包含含著所創(chuàng)創(chuàng)建對象象的狀態(tài)描描述和方方法的定定義。由一個(gè)特特定的類類所創(chuàng)建建的的對對象也稱稱為這個(gè)類的的實(shí)例。。一個(gè)類的的所有對對象都有有相同的的數(shù)據(jù)結(jié)結(jié)構(gòu),并且共享享相同的的實(shí)現(xiàn)操操作的代代碼,而而各個(gè)對對象又有具具體的不不同的狀狀態(tài)。類類和對象象類似于于面向過程程語言中中數(shù)據(jù)類類型和變變量。例如:學(xué)學(xué)生類和和某個(gè)學(xué)學(xué)生對象象。2、繼承承和重用用制造一種種新型號號的電視視機(jī)可以以有兩種種選擇::1)從草草圖開始始重新設(shè)設(shè)計(jì)2)對現(xiàn)現(xiàn)有型號號加以改改進(jìn)(繼繼承和重重用)C++采采用繼承承機(jī)制支支持重用用,不僅僅可重用用具有特特定功能能的類,,而且繼繼承可以以由已有有的類創(chuàng)造新的的類。新類共享享已有類類的屬性性,自己己還具有有額外添加的屬屬性,新新類是從從已有類類派生的的,稱為為派生類或子子類,已已有類稱稱為父類類或基類類。在客觀世世界中,,存在著著整體和和部分的的關(guān)系、、一般和特特殊的關(guān)關(guān)系,繼繼承將后后者模型型化。汽車類,,各各類汽車車?yán)ハx類,,各各類昆蟲蟲3、多態(tài)態(tài)性封裝性、、繼承性性、多態(tài)態(tài)性是構(gòu)構(gòu)成面向向?qū)ο蟪绦蛟O(shè)計(jì)計(jì)的三大大特征。。封裝性是是基礎(chǔ)繼承性是是關(guān)鍵多態(tài)性是是補(bǔ)充什么是多多態(tài)性??多態(tài)是指指一個(gè)名名字有多多種語義義,或一一個(gè)相同同界面有有多種實(shí)實(shí)現(xiàn);或是指發(fā)發(fā)出同樣樣的消息息被不同同類型的的對象接受而導(dǎo)導(dǎo)致完全全不同的的行為。。即對象象根據(jù)所所接收到到的消息息做出相相應(yīng)的操操作。例如:在在學(xué)籍管管理系統(tǒng)統(tǒng)中學(xué)生類((基類))計(jì)算成績績的操作作中學(xué)生類類(派生生類)計(jì)算成績績的操作作大學(xué)生類類(派生生類)計(jì)算成績績的操作作又如:在在繪圖系系統(tǒng)中使使用的多多態(tài)性。。函數(shù)重載載和運(yùn)算算符重載載表現(xiàn)了了最簡單單的多態(tài)態(tài)性。函數(shù)重載載:Voidf(int,int,char);Voidf(char,float);Voidf(int,int);Voidf(int,float);運(yùn)算符重重載:為運(yùn)算符符+-*/等等賦以以新的含含義,以以實(shí)現(xiàn)類對對象的運(yùn)運(yùn)算。編譯錯連接編輯編譯運(yùn)行連接錯運(yùn)行錯YYYNNN完成#include文件C++庫文件×××.CPP
源程序×××.obj目標(biāo)程序×××.exe可執(zhí)行程序#include文件§1.4程程序開開發(fā)過程程例1://************************//*******ch1.1.cpp*********//************************#include<iostream.h>voidmain(){cout<<“Iamastudent.\n”;}§1.5最最簡單單的程序序運(yùn)行結(jié)果果為:Iamastudent.例2://**ch1.2.cpp**#include<iostream.h>voidmain(){inta,b,result;cout<<“Pleaseinputtwonumbers:\n””;cin>>a>>b;result=3*a-2*b+1;cout<<“Resultis””<<result<<endl;}運(yùn)行結(jié)果為:C:>ch1.2Pleaseinputtwonumbers:10050Resultis201C++程程序是由由函數(shù)構(gòu)構(gòu)成的,,由一個(gè)個(gè)主函數(shù)數(shù)和若干干個(gè)函數(shù)數(shù)構(gòu)成。。C++程序序是函數(shù)數(shù)驅(qū)動的的。例3://*******ch1.3.cpp*********#include<iostream.h>#include<math.h>doublemax(doublx,doubly);voidmain(){doublea,b,c;cout<<“Inputtwonumbers:\n”;cin>>a>>b;c=max(a,b);cout<<“Thesquartofmaximum=”<<sqrt(c);}§1.6函函數(shù)數(shù)doublema
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 遼寧省撫順市2024-2025學(xué)年人教版八年級上冊數(shù)學(xué)期中模擬試題(含答案)
- 2024年度云南省高校教師資格證之高等教育心理學(xué)模擬試題(含答案)
- 2024年度上海市高校教師資格證之高等教育法規(guī)題庫附答案(典型題)
- 光伏發(fā)電+儲能項(xiàng)目三期項(xiàng)目建筑安裝工程投標(biāo)方案(技術(shù)方案)
- 阜陽師范大學(xué)《小型建筑設(shè)計(jì)》2023-2024學(xué)年第一學(xué)期期末試卷
- 阜陽師范大學(xué)《快題設(shè)計(jì)》2022-2023學(xué)年第一學(xué)期期末試卷
- 福建師范大學(xué)協(xié)和學(xué)院《物流運(yùn)籌學(xué)》2021-2022學(xué)年第一學(xué)期期末試卷
- 福建師范大學(xué)《中國民族民間音樂》2021-2022學(xué)年第一學(xué)期期末試卷
- 2024年二級建造師機(jī)電-思維導(dǎo)圖
- 福建師范大學(xué)《工程基礎(chǔ)二》2021-2022學(xué)年第一學(xué)期期末試卷
- GB/T 44457-2024加氫站用儲氫壓力容器
- 2024年內(nèi)蒙古呼和浩特市中考英語試卷真題(含答案解析)
- 全等三角形的判定 邊邊邊說課稿2024-2025學(xué)年人教版數(shù)學(xué)八年級上冊
- 2024-2030年中國酒類電子商務(wù)行業(yè)盈利模式分析與發(fā)展?jié)摿υu估研究報(bào)告
- 近三年投標(biāo)沒有發(fā)生過重大質(zhì)量安全事故的書面聲明范文
- 2024時(shí)事政治考試題庫(100題)
- 2024-2030年中國心血管外科設(shè)備和技術(shù)行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析報(bào)告
- 2024年甘肅慶陽市林業(yè)和草原局招聘專職聘用制護(hù)林員57人歷年(高頻重點(diǎn)復(fù)習(xí)提升訓(xùn)練)共500題附帶答案詳解
- 2024年宜賓市中考英語試題(附答案)
- DL∕T 5776-2018 水平定向鉆敷設(shè)電力管線技術(shù)規(guī)定
- 國際飛機(jī)租賃合同范本
評論
0/150
提交評論