第1章 C++語(yǔ)言概述_第1頁(yè)
第1章 C++語(yǔ)言概述_第2頁(yè)
第1章 C++語(yǔ)言概述_第3頁(yè)
第1章 C++語(yǔ)言概述_第4頁(yè)
第1章 C++語(yǔ)言概述_第5頁(yè)
已閱讀5頁(yè),還剩39頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、課程名稱:C+程序設(shè)計(jì) 主講教師 :馮玉芬 E_mail:使用教材:使用教材: C+語(yǔ)言程序設(shè)計(jì)(第3版) 呂鳳翥主編著 電子工業(yè)出版社參考書:參考書:(1) 呂鳳翥 著,C+語(yǔ)言基礎(chǔ)教程(第2版),清華大學(xué)出版社(2) 錢能著 C+程序設(shè)計(jì)教程 清華大學(xué)出版社(3) Stanley B. Lippman 等著C+ Primer2006年(4) 譚浩強(qiáng) 著,C+程序設(shè)計(jì),清華大學(xué)出版社(5)王超 著,C+程序設(shè)計(jì),地質(zhì)出版社,2006年教材與參考書本課程主要內(nèi)容:第1章 C+語(yǔ)言概述第2章 變量和常量第3章 運(yùn)算符和表達(dá)式第4章 語(yǔ)句和預(yù)處理第5章 函數(shù)和存儲(chǔ)類第6章 指針和引用第7章 結(jié)構(gòu)體

2、和聯(lián)合第8章 類和簡(jiǎn)單對(duì)象第9章 復(fù)雜對(duì)象第10章 繼承性和派生類第11章 多態(tài)性和虛函數(shù)第12章 C+語(yǔ)言的I/O流類庫(kù)教學(xué)目標(biāo):1.認(rèn)識(shí)計(jì)算機(jī)程序概念和了解程序設(shè)計(jì)思想。2.理解和掌握C+語(yǔ)言的基本詞法規(guī)則和語(yǔ)句,(變量、常量、數(shù)據(jù)類型類型、運(yùn)算符、表達(dá)式、基本語(yǔ)句及語(yǔ)句的控制結(jié)構(gòu)、函數(shù)的定義,函數(shù)的調(diào)用、變量的作用域、指針、結(jié)構(gòu)體和聯(lián)合體、類和對(duì)象的定義、類的繼承性和派生、類的多態(tài)性)3.具備使用C+語(yǔ)言解決簡(jiǎn)單問(wèn)題的能力,逐步提高學(xué)生的編程能力和調(diào)試程序的能力,為后面課程的學(xué)習(xí)打好基礎(chǔ)。第1章 C+語(yǔ)言概述怎樣學(xué)好C+程序設(shè)計(jì)語(yǔ)言臺(tái)灣知名技術(shù)專家蔡學(xué)鏞先生寫了一本編程ING,宣稱“人人

3、都能學(xué)會(huì)程序設(shè)計(jì)” 循序漸進(jìn),由淺入深,步步為營(yíng),興趣導(dǎo)向。 第1章 C+語(yǔ)言概述2.怎樣學(xué)好C+程序設(shè)計(jì)語(yǔ)言 學(xué)習(xí)方法:1)學(xué)習(xí)每章內(nèi)容時(shí),注意對(duì)基本概念的理解,掌握每章的主要內(nèi)容。注意了解、理解和掌握三個(gè)層次的要求;2)每堂結(jié)束布置的習(xí)題一定要獨(dú)立完成。這是進(jìn)一步掌握所學(xué)內(nèi)容的一個(gè)重要途徑;3)上機(jī)環(huán)境是VC 6.0 ,要求進(jìn)一步掌握對(duì)C+語(yǔ)言程序的調(diào)試方法。要提高寫程序的能力只能通過(guò)多讀一些程序,多寫和調(diào)試一些程序要提高寫程序的能力只能通過(guò)多讀一些程序,多寫和調(diào)試一些程序,多練習(xí),多練習(xí),從簡(jiǎn)單的做起,從簡(jiǎn)單的做起,第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介(了解)1.2 C語(yǔ)言與C+

4、語(yǔ)言的關(guān)系(了解)1.3 C+語(yǔ)言的詞法和詞法規(guī)則(掌握)1.4 C+程序結(jié)構(gòu)上的特點(diǎn)(掌握)1.5 C+程序的實(shí)現(xiàn)(掌握)第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介C+是一種面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言,它是在C語(yǔ)言基礎(chǔ)上發(fā)展起來(lái)的,雖然它不是最早的面向?qū)ο笞钤绲拿嫦驅(qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言,但是它是目前使用較為廣泛的面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言。1.計(jì)算機(jī)計(jì)算機(jī)的組成:2.軟件系統(tǒng)軟件系統(tǒng):是由硬件系統(tǒng)和軟件系統(tǒng)軟件系統(tǒng)兩大部分組成的 軟件=程序程序+文檔 3.什么是程序程序?軟件是程序以及開(kāi)發(fā)、使用和維護(hù)所需要的所有文檔的總稱,而程序是軟件的一部分。 程序設(shè)計(jì)就是把一堆指令指令放在一塊實(shí)現(xiàn)某種功能 程序

5、設(shè)計(jì)=數(shù)據(jù)結(jié)構(gòu)+算法 4.什么是程序設(shè)計(jì)語(yǔ)言程序設(shè)計(jì)語(yǔ)言?指令指令是用計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言程序設(shè)計(jì)語(yǔ)言編寫的計(jì)算機(jī)可以識(shí)別的命令。計(jì)算機(jī)只能識(shí)別一種語(yǔ)言,就是機(jī)器語(yǔ)言,是由計(jì)算機(jī)只能識(shí)別一種語(yǔ)言,就是機(jī)器語(yǔ)言,是由0和和1組成的指令組成的指令 第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介機(jī)器語(yǔ)言匯編語(yǔ)言高級(jí)語(yǔ)言 機(jī)器語(yǔ)言 由是用二進(jìn)制代碼表示的計(jì)算機(jī)能直接識(shí)別和執(zhí)行的機(jī)器指令的集合。它是計(jì)算機(jī)設(shè)計(jì)者通過(guò)計(jì)算機(jī)硬件結(jié)構(gòu)賦予計(jì)算機(jī)的功能。 計(jì)算機(jī)發(fā)展的初期,軟件工程師們只能用機(jī)器語(yǔ)言來(lái)編寫程序。這一階段,在人類的自然語(yǔ)言和計(jì)算機(jī)編程語(yǔ)言之間存在著巨大的鴻溝。如 1011 1100 1111優(yōu)點(diǎn):直接

6、執(zhí)行,速度快缺點(diǎn):難讀、難編、難記,易出錯(cuò)和移植性差第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介 匯編語(yǔ)言為了克服機(jī)器語(yǔ)言難讀、難編、難記和易出錯(cuò)的缺點(diǎn),人們就用于代碼指令含義相近的英文縮寫詞、字母或數(shù)字字符等符號(hào)來(lái)取代指令代碼,于是就產(chǎn)生了匯編語(yǔ)言。匯編語(yǔ)言將機(jī)器指令映射為一些可以被人讀懂的助記符,如ADD、SUB等。此時(shí)編程語(yǔ)言與人類自然語(yǔ)言間的鴻溝略有縮小,但仍與人類的思維相差甚遠(yuǎn),是面向機(jī)器面向機(jī)器的計(jì)算機(jī)語(yǔ)言。因?yàn)樗某橄髮哟翁停绦騿T需要考慮大量的機(jī)器細(xì)節(jié)。如:ADD CX DX將DX的內(nèi)容加進(jìn)CX 需要匯編,不能直接執(zhí)行,由匯編程序,翻譯成目標(biāo)程序。不能直接執(zhí)行,由匯編程序,翻

7、譯成目標(biāo)程序。優(yōu)點(diǎn):目標(biāo)程序占用內(nèi)存空間少,執(zhí)行速度快,有著高級(jí)語(yǔ)言不可替代的用途缺點(diǎn):使用起來(lái)比較繁瑣,通用性差,是低級(jí)語(yǔ)言第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介 高級(jí)語(yǔ)言:高級(jí)語(yǔ)言: 不論是機(jī)器語(yǔ)言還是匯編語(yǔ)言都是面向硬件的具體操作,語(yǔ)言對(duì)機(jī)器過(guò)分依賴,要求使用者必須對(duì)硬件結(jié)構(gòu)及其工作原理十分熟悉,這對(duì)非計(jì)算機(jī)專業(yè)人員是難以做到的,不利于計(jì)算機(jī)的推廣應(yīng)用,隨著計(jì)算機(jī)技術(shù)的發(fā)展,促使人們?nèi)で笠恍┡c人類自然語(yǔ)言相近且能為計(jì)算機(jī)所接受的語(yǔ)意確定、規(guī)則明確、自然直觀和通用易學(xué)語(yǔ)意確定、規(guī)則明確、自然直觀和通用易學(xué)的計(jì)算機(jī)語(yǔ)言。 那么這種與自然語(yǔ)言接近,并為計(jì)算機(jī)所接受和執(zhí)行的計(jì)算機(jī)語(yǔ)言就稱

8、為高級(jí)語(yǔ)言。 高級(jí)語(yǔ)言屏蔽了機(jī)器的細(xì)節(jié),是面向用戶面向用戶的計(jì)算機(jī)語(yǔ)言第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介Fortran 和Algol語(yǔ)言 美國(guó)IBM公司約翰貝克斯(John Backus)針對(duì)匯編語(yǔ)言的缺點(diǎn)著手研究開(kāi)發(fā)FORTRAN語(yǔ)言 FORTRAN語(yǔ)言是世界上第一個(gè)被正式推語(yǔ)言是世界上第一個(gè)被正式推廣使用的高級(jí)語(yǔ)言廣使用的高級(jí)語(yǔ)言。它是1954年被提出來(lái)的,1956年開(kāi)始正式使用,至今已有五十多年的歷史,但仍歷久不衰,它始終是數(shù)值計(jì)算領(lǐng)域所使用的主要語(yǔ)言。 FORTRAN語(yǔ)言是Formula Translation的縮寫,意為“公式翻譯”。它是為科學(xué)、工程問(wèn)題或企事業(yè)管理中的那些

9、能夠用數(shù)學(xué)公式表達(dá)的問(wèn)題而設(shè)計(jì)的,其數(shù)值計(jì)算的功能較強(qiáng)。 1977 John Backus因?qū)捎玫母咭驅(qū)捎玫母呒?jí)編程系統(tǒng)設(shè)計(jì)有深遠(yuǎn)和重大的影響級(jí)編程系統(tǒng)設(shè)計(jì)有深遠(yuǎn)和重大的影響而獲圖靈獎(jiǎng)而獲圖靈獎(jiǎng) ALGOL語(yǔ)言(ALGOrithmic Language)的縮寫 艾倫佩利(Alan J.Perlis)在巴黎舉行的有全世界一流軟件專家參加的討論會(huì)上,發(fā)表了算法語(yǔ)言Algol 60報(bào)告 1966 A. J. Perlis因在新一代編程技術(shù)和因在新一代編程技術(shù)和編譯架構(gòu)方面的貢獻(xiàn)而獲圖靈獎(jiǎng)編譯架構(gòu)方面的貢獻(xiàn)而獲圖靈獎(jiǎng) 第一代高級(jí)語(yǔ)言第一代高級(jí)語(yǔ)言 對(duì)數(shù)學(xué)表達(dá)式有很強(qiáng)的運(yùn)算處理能力對(duì)數(shù)學(xué)表達(dá)式有很強(qiáng)

10、的運(yùn)算處理能力John BackusAlan J.Perlis第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介Pascal是最早出現(xiàn)的結(jié)構(gòu)化編程語(yǔ)言,具有豐富的數(shù)據(jù)類型和簡(jiǎn)潔靈活的操作語(yǔ)句,適于描述數(shù)值和非數(shù)值數(shù)值和非數(shù)值的問(wèn)題。 瑞士Niklaus Wirth教授于六十年代末設(shè)計(jì)并創(chuàng)立。Pascal也可以是指人名,它的取名原本就是為了紀(jì)念十七世紀(jì)法國(guó)著名哲學(xué)家和數(shù)學(xué)家Blaise Pascal, 1984 Niklaus Wirth因開(kāi)發(fā)了因開(kāi)發(fā)了EULER、 ALGOL-W、 MODULA和和PASCAL一系列嶄新的計(jì)算語(yǔ)言一系列嶄新的計(jì)算語(yǔ)言而獲獎(jiǎng)而獲獎(jiǎng) C語(yǔ)言是一種計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言,它既

11、具有高級(jí)語(yǔ)言的特點(diǎn),又具有匯編語(yǔ)言的特點(diǎn)。 C語(yǔ)言是1972年由美國(guó)的Dennis Ritchie設(shè)計(jì)發(fā)明的,在1970年,AT&T貝爾實(shí)驗(yàn)室的Ken Thompson根據(jù)BCPL(Basic Combined Programming Language)語(yǔ)言設(shè)計(jì)出較先進(jìn)的并取名為B的語(yǔ)言。 1983 Ken Thompson和和Dennis M. Ritchie因在通用操作系統(tǒng)理論因在通用操作系統(tǒng)理論方面的突出貢獻(xiàn),特別是對(duì)方面的突出貢獻(xiàn),特別是對(duì)UNIX操作系統(tǒng)操作系統(tǒng)的推廣的貢獻(xiàn)而獲獎(jiǎng)的推廣的貢獻(xiàn)而獲獎(jiǎng) 第二代高級(jí)語(yǔ)言第二代高級(jí)語(yǔ)言 如何有效地表達(dá)算法如何有效地表達(dá)算法 Pasca

12、l和C語(yǔ)言第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介 第三代高級(jí)語(yǔ)言第三代高級(jí)語(yǔ)言 引入抽象數(shù)據(jù)類型的程序設(shè)計(jì)語(yǔ)言(不支持繼承,是引入抽象數(shù)據(jù)類型的程序設(shè)計(jì)語(yǔ)言(不支持繼承,是基于對(duì)象的程序設(shè)計(jì)語(yǔ)言)基于對(duì)象的程序設(shè)計(jì)語(yǔ)言) Ada Ada是一種表現(xiàn)能力很強(qiáng)的通用程序設(shè)計(jì)語(yǔ)言,它是美國(guó)國(guó)防部為克服軟件開(kāi)發(fā)危機(jī),耗費(fèi)巨資,歷時(shí)近20年研制成功的。 Ada語(yǔ)言是 美國(guó)國(guó)防部指定的 唯一的一種可用于 軍用系統(tǒng)開(kāi)發(fā)的語(yǔ)言,我國(guó)軍方也將Ada做為軍內(nèi)開(kāi)發(fā)標(biāo)準(zhǔn)查爾斯巴貝奇(Charles Babbage,17921871): 巴貝奇計(jì)算器第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介阿蘭麥席森圖靈 (19

13、121954),英國(guó)著名數(shù)學(xué)家、邏輯學(xué)家、密碼學(xué)家,被稱為計(jì)算機(jī)科學(xué)之父、人工智能之父。1912年6月23日生于英國(guó)帕丁頓,1931年進(jìn)入劍橋大學(xué)國(guó)王學(xué)院,師從著名數(shù)學(xué)家哈代,1938年在美國(guó)普林斯頓大學(xué)取得博士學(xué)位,二戰(zhàn)爆發(fā)后返回劍橋,曾協(xié)助軍方破解德國(guó)的著名密碼系統(tǒng)Enigma,幫助盟軍取得了二戰(zhàn)的勝利。1954年6月7日在曼徹斯特去世。他是計(jì)算機(jī)邏輯的奠基者,提出了“圖靈機(jī)”和“圖靈測(cè)試”等重要概念。人們?yōu)榧o(jì)念其在計(jì)算機(jī)領(lǐng)域的卓越貢獻(xiàn)而專門設(shè)立了“圖靈獎(jiǎng)”。 Alan Mathison Turing 第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介 第四代語(yǔ)言第四代語(yǔ)言 面向?qū)ο竺嫦驅(qū)ο蟪绦?/p>

14、設(shè)計(jì)語(yǔ)言程序設(shè)計(jì)語(yǔ)言 面向?qū)ο蟮恼Z(yǔ)言更接近于自然語(yǔ)言。20世紀(jì)60年代開(kāi)發(fā)的simula 67,是面向?qū)ο笳Z(yǔ)言的鼻祖。 C+、Java語(yǔ)語(yǔ)言言的的鴻鴻溝溝計(jì)算機(jī) 客觀世界機(jī)器語(yǔ)言匯編語(yǔ)言結(jié)構(gòu)化語(yǔ)言面向?qū)ο蟮恼Z(yǔ)言自然語(yǔ)言對(duì)問(wèn)題的認(rèn)識(shí)(人)語(yǔ)言的鴻溝編程(人)程序的理解和執(zhí)行(機(jī)器)第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介 一般意義上的對(duì)象:一般意義上的對(duì)象:對(duì)象是人們要進(jìn)行研究的任何事物,是對(duì)問(wèn)題領(lǐng)域中事物的抽象。對(duì)象具有以下特性對(duì)象具有以下特性萬(wàn)物皆對(duì)象每個(gè)對(duì)象都是唯一的對(duì)象具有屬性和行為靜態(tài)特征:可以用某種數(shù)據(jù)來(lái)描述動(dòng)態(tài)特征:對(duì)象所表現(xiàn)的行為或具有的功能對(duì)象具有狀態(tài)對(duì)象都屬于某個(gè)類,每個(gè)

15、對(duì)象都是某個(gè)類的實(shí)例 可以是有形的(比如一輛汽車),也可以是無(wú)形的(比如一項(xiàng)計(jì)劃)。對(duì)象對(duì)象第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介分類是人類認(rèn)識(shí)客觀事物的一種常用的思維方法分類是人類認(rèn)識(shí)客觀事物的一種常用的思維方法分類所依據(jù)的原則分類所依據(jù)的原則抽象抽象找出事物的共性,把具有共同性質(zhì)的事物劃分為一類,得出一個(gè)抽象的找出事物的共性,把具有共同性質(zhì)的事物劃分為一類,得出一個(gè)抽象的概念。概念。 例如,石頭、樹(shù)木、汽車、房屋等都是人們?cè)陂L(zhǎng)期的生產(chǎn)和生活實(shí)例如,石頭、樹(shù)木、汽車、房屋等都是人們?cè)陂L(zhǎng)期的生產(chǎn)和生活實(shí)踐中抽象出的概念。踐中抽象出的概念。類類國(guó)家國(guó)家 國(guó)旗;國(guó)旗; 國(guó)土面積;國(guó)土面積;

16、國(guó)花;國(guó)花; 國(guó)歌;國(guó)歌;中國(guó)中國(guó) 五星紅旗五星紅旗; 960萬(wàn)平方公里萬(wàn)平方公里; 牡丹牡丹; 義勇軍進(jìn)行曲義勇軍進(jìn)行曲;第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介把對(duì)象的屬性和行為(數(shù)據(jù)和操作)結(jié)合成一個(gè)獨(dú)立的封裝體。封裝具有隱蔽性,封裝體外不可見(jiàn)的成員被隱藏起來(lái),具有安全性。封裝體與外界聯(lián)系是通過(guò)稱為接口的通道進(jìn)行的。 封裝封裝如手機(jī)等物品,內(nèi)部的通訊過(guò)程很復(fù)雜,但是對(duì)使用者很易用如手機(jī)等物品,內(nèi)部的通訊過(guò)程很復(fù)雜,但是對(duì)使用者很易用如定義一個(gè)用于處理發(fā)送短信的類,對(duì)外提供的方法只要求用如定義一個(gè)用于處理發(fā)送短信的類,對(duì)外提供的方法只要求用戶傳遞接受號(hào)碼和短信內(nèi)容,內(nèi)部具體怎么把短信發(fā)

17、送出去對(duì)戶傳遞接受號(hào)碼和短信內(nèi)容,內(nèi)部具體怎么把短信發(fā)送出去對(duì)于使用者不可見(jiàn)。于使用者不可見(jiàn)。第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介聚合是類之間的一種包含關(guān)系。在處理復(fù)雜的問(wèn)題時(shí),常常把復(fù)雜的問(wèn)題進(jìn)行分解成若干個(gè)簡(jiǎn)單問(wèn)題,逐個(gè)解決簡(jiǎn)單的問(wèn)題來(lái)實(shí)現(xiàn)對(duì)復(fù)雜問(wèn)題的解決,具體實(shí)現(xiàn)方法是在一個(gè)類中可以包含另一個(gè)類的對(duì)象。一個(gè)復(fù)雜的類可以是若干個(gè)簡(jiǎn)單類的對(duì)象組成。著這種方法稱為聚合。飛機(jī)機(jī)翼機(jī)身機(jī)尾發(fā)動(dòng)機(jī) 聚合聚合第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介 定義:特殊類的對(duì)象擁有其一般類的全部屬性與行為,并且還有自己特殊的屬性和行為,稱作特殊類對(duì)一般類的繼承繼承。 繼承繼承第1章 C+語(yǔ)言概述1.

18、1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介22生活中,繼承的例子隨處可見(jiàn)汽車卡車轎車父類更通用、子類更具體有自身裝備動(dòng)力驅(qū)動(dòng)的車輛 。汽車的屬性剎車、加速、油耗、速度、載重用于載人及隨身物品且座位布置在兩車軸之間的汽車載貨汽車10/28/2021父類或基類子類或派生類子類或派生類第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介23哺乳動(dòng)物哺乳動(dòng)物熱血、有毛發(fā)、用奶哺育幼仔熱血、有毛發(fā)、用奶哺育幼仔狗狗有犬牙、食肉、聽(tīng)覺(jué)嗅覺(jué)敏有犬牙、食肉、聽(tīng)覺(jué)嗅覺(jué)敏銳,秉性忠誠(chéng),有特定骨骼銳,秉性忠誠(chéng),有特定骨骼結(jié)構(gòu)。結(jié)構(gòu)。貓貓全身披毛,趾底有脂肪質(zhì)肉墊,行走全身披毛,趾底有脂肪質(zhì)肉墊,行走無(wú)聲。會(huì)捕鼠,會(huì)上樹(shù),愛(ài)吃魚(yú),白無(wú)聲。會(huì)捕鼠,

19、會(huì)上樹(shù),愛(ài)吃魚(yú),白天貪睡。天貪睡。獅子貓獅子貓為白色長(zhǎng)毛,頸、背為白色長(zhǎng)毛,頸、背部毛長(zhǎng)達(dá)部毛長(zhǎng)達(dá)4-5厘米,站厘米,站姿猶如獅子。姿猶如獅子。 波斯貓波斯貓頭部又圓又大,頭部又圓又大, 朵朵細(xì)小,細(xì)小, 耳尖渾圓,耳尖渾圓, 眼睛既大且圓,眼睛既大且圓, 鼻鼻子短、扁、寬闊。子短、扁、寬闊。下巴飽滿,下巴飽滿, 結(jié)實(shí)渾結(jié)實(shí)渾圓圓博美犬博美犬頭短小、耳朵小頭短小、耳朵小巧,毛密實(shí),活巧,毛密實(shí),活潑親人潑親人柯利狗柯利狗尖鼻子、身體顏尖鼻子、身體顏色紅白相間、適色紅白相間、適合放牧合放牧10/28/2021第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介24單繼承和多繼承老虎牙齒鋒利,爪子大,身體

20、上有斑紋會(huì)爬樹(shù),喜歡游泳,集力量速度于一身。獅子雄獅擁有夸張的鬃毛,體型碩大 ,奔跑迅速獅虎獸頭上有獅子所擁有的鬃毛,身體上有老虎身上的斑紋,喜歡游泳第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介 繼承對(duì)于軟件復(fù)用有著重要意義,是面向?qū)ο蠹夹g(shù)能夠提高軟件開(kāi)發(fā)效率的重要原因之一。繼承對(duì)軟件開(kāi)發(fā)的意義:將已經(jīng)開(kāi)發(fā)好的類存放在類庫(kù)里,開(kāi)發(fā)新系統(tǒng)時(shí),可直接使用或繼承使用已有的類,減少編程的工作量,并提高編程質(zhì)量繼承繼承第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介 多態(tài)是指在一般類中定義的屬性或行為,被特殊類繼承之后,可以具有不同的數(shù)據(jù)類型或表現(xiàn)出不同的行為。這使得同一個(gè)屬性或行為在一般類及其各個(gè)特殊類中

21、具有不同的語(yǔ)義。交通工具交通工具飛機(jī)類飛機(jī)類船類船類火車類火車類多態(tài)性多態(tài)性第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介多態(tài)性(一對(duì)多的狀態(tài))多態(tài)性(一對(duì)多的狀態(tài))Person Student Teacher Student和和Teacher類類SayHi()的內(nèi)容不同的內(nèi)容不同 Person類,在這兩種場(chǎng)合的行為不同類,在這兩種場(chǎng)合的行為不同第1章 C+語(yǔ)言概述1.1 面向?qū)ο笳Z(yǔ)言簡(jiǎn)介 封裝要求一個(gè)對(duì)象應(yīng)具備明確的功能,并具有接口以便和其他對(duì)要求一個(gè)對(duì)象應(yīng)具備明確的功能,并具有接口以便和其他對(duì)象相互作用。象相互作用。 繼承就是一個(gè)對(duì)象可以獲得另一個(gè)對(duì)象的特征。就是一個(gè)對(duì)象可以獲得另一個(gè)對(duì)象的

22、特征。 多態(tài)性不同的對(duì)象可以調(diào)用相同名稱的函數(shù),并可導(dǎo)致完全不同不同的對(duì)象可以調(diào)用相同名稱的函數(shù),并可導(dǎo)致完全不同行為的現(xiàn)象稱為多態(tài)性。行為的現(xiàn)象稱為多態(tài)性。面向?qū)ο蟮姆椒蓺w納為如下幾點(diǎn) (1)將客觀事物中抽象出的數(shù)據(jù)和方法構(gòu)成一個(gè)集合體,即對(duì)象)將客觀事物中抽象出的數(shù)據(jù)和方法構(gòu)成一個(gè)集合體,即對(duì)象(2)將相同類型的對(duì)象抽象出共性,形成類)將相同類型的對(duì)象抽象出共性,形成類(3)類是一個(gè)封裝體,數(shù)據(jù)通過(guò)類的方法來(lái)操作,數(shù)據(jù)在類外不可)類是一個(gè)封裝體,數(shù)據(jù)通過(guò)類的方法來(lái)操作,數(shù)據(jù)在類外不可見(jiàn),無(wú)法進(jìn)行訪問(wèn)見(jiàn),無(wú)法進(jìn)行訪問(wèn)(4)類通過(guò)接口與外界發(fā)生聯(lián)系)類通過(guò)接口與外界發(fā)生聯(lián)系(5)對(duì)象之間通過(guò)

23、消息通信)對(duì)象之間通過(guò)消息通信第1章 C+語(yǔ)言概述5. 面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言解釋程序運(yùn)行結(jié)果源程序初始數(shù)據(jù)源程序編譯程序目標(biāo)程序初始數(shù)據(jù)目標(biāo)程序運(yùn)行結(jié)果解釋方式解釋方式編譯方式編譯方式第1章 C+語(yǔ)言概述5. 面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言1.2.1 C+語(yǔ)言是對(duì)語(yǔ)言是對(duì)C語(yǔ)言的改進(jìn)語(yǔ)言的改進(jìn) 1)C+語(yǔ)言中增加了一些運(yùn)算符 (如 : new delete .* -*) 2) C語(yǔ)言是一種弱類型語(yǔ)言,類型轉(zhuǎn)換不夠嚴(yán)格; 3)引進(jìn)了引用的概念,使用引用作為函數(shù)參數(shù),克服了使用指針帶來(lái)的不變; 4)允許函數(shù)重載,允許設(shè)置默認(rèn)參數(shù),還引進(jìn)了內(nèi)聯(lián)函數(shù)的概念 5)對(duì)變量的說(shuō)明更加靈活,不受C語(yǔ)言中某些規(guī)定的限

24、制。第1章 C+語(yǔ)言概述1.2 C語(yǔ)言與C+語(yǔ)言的關(guān)系(了解)第1章 C+語(yǔ)言概述第2章 變量和常量 (C)第3章 運(yùn)算符和表達(dá)式 ( C)第4章 語(yǔ)句和預(yù)處理 (C)第5章 函數(shù)和存儲(chǔ)類 (C)第6章 指針和引用 (C和C+)第7章 結(jié)構(gòu)體和聯(lián)合 (C)第8章 類和簡(jiǎn)單對(duì)象 (C+)第9章 復(fù)雜對(duì)象 (C+)第10章 繼承性和派生類 (C+)第11章 多態(tài)性和虛函數(shù) (C+)第12章 C+語(yǔ)言的I/O流類庫(kù) (C+)字符是語(yǔ)言中可以區(qū)分的最小符號(hào)字符是語(yǔ)言中可以區(qū)分的最小符號(hào)1)C+語(yǔ)言的字符集組成語(yǔ)言的字符集組成 1)大小寫英文字母 2)數(shù)字字符 3)特殊符號(hào): 空格 ! # % &

25、; * _ - + = / | . , : ; ? “ () 2)單詞及詞法規(guī)則)單詞及詞法規(guī)則(單詞是由字符組成的具有一定意義的最小單詞是由字符組成的具有一定意義的最小詞法單元)詞法單元)a.標(biāo)識(shí)符標(biāo)識(shí)符(程序員定義的實(shí)體名)程序員定義的實(shí)體名)可以由以大寫字母、小寫字母、下劃線”_”或數(shù)字09組成以大寫字母、小寫字母或下劃線”_”開(kāi)始。大寫字母和小寫字母代表不同的標(biāo)識(shí)符。在實(shí)際應(yīng)用中,盡量使用有意義的單詞作為表示符。用戶定義標(biāo)識(shí)符時(shí),不要采用系統(tǒng)的保留字。第1章 C+語(yǔ)言概述1.3 C+語(yǔ)言詞法和詞法規(guī)則(掌握)變量名,常量名,變量名,常量名,類名,對(duì)象名,類類名,對(duì)象名,類型名,函數(shù)名型

26、名,函數(shù)名 b.關(guān)鍵字關(guān)鍵字 關(guān)鍵字是系統(tǒng)已經(jīng)預(yù)定義的單詞,在程序中有不同的用途 auto bool break case char catch class const continue default delete do double else enum explicit extern float for friend goto if include long mutable new operator private protect public register return short signed sizeof static static_cast struct switch temp

27、late this throw true try typedef union unsigned using vitual void volatile while c.運(yùn)算符運(yùn)算符 是系統(tǒng)預(yù)定義的函數(shù)名字,這些函數(shù)作用于被操作的對(duì)象,將獲得一個(gè)結(jié)果值d. 分隔符分隔符 標(biāo)點(diǎn)符號(hào)用來(lái)分隔單詞或程序正文的,用來(lái)表示一個(gè)程序體的結(jié)束或另外一個(gè)程序體的開(kāi)始 空格 逗號(hào) 分號(hào) 冒號(hào) e. 常量常量 在程序中直接使用符號(hào)表示的數(shù)據(jù),字符常量 數(shù)字常量 字符串常量 f. 注釋符注釋符 在程序中僅起到注釋和說(shuō)明作用,注釋的目的是方便閱讀,在程序編譯的詞法分析階段,注釋將從程序中刪除。第1章 C+語(yǔ)言概述1.3

28、C+語(yǔ)言詞法和詞法規(guī)則(掌握)(1) 一個(gè)C+語(yǔ)言程序的例子/ 這是第一個(gè)C+程序#include void main()cout“Hello World!”;第1章 C+語(yǔ)言概述1.4 C+程序結(jié)構(gòu)上的特點(diǎn)/預(yù)處理命令/main函數(shù)定義/輸出語(yǔ)句C+程序的組成部分 預(yù)處理命令 函數(shù) 輸出語(yǔ)句(2) 一個(gè)C+語(yǔ)言程序的例子/ this is a C+ program.#include void main()double x,y;coutxy;double z=x+y;cout“x+y=”zendl; /注釋行/預(yù)處理命令/main函數(shù)定義/聲明變量語(yǔ)句/輸出語(yǔ)句/輸入語(yǔ)句/聲明變量在并為其初值

29、/輸出語(yǔ)句C+程序的組成部分 預(yù)處理命令 函數(shù) 輸出語(yǔ)句,輸入語(yǔ)句變量聲明語(yǔ)句第1章 C+語(yǔ)言概述1.4 C+程序結(jié)構(gòu)上的特點(diǎn)(3)C+程序的書寫格式程序的書寫格式基本原則一行一般寫一條語(yǔ)句書寫程序時(shí)要盡量提高可讀性每個(gè)大括號(hào)占一行,并與使用大括號(hào)的語(yǔ)句對(duì)齊。大括號(hào)里的語(yǔ)句采用縮格書寫方式,一般縮進(jìn)兩個(gè)格如:#include void main() int a,b; a=5; b=7; cout“a*b=”a*bendl; 第1章 C+語(yǔ)言概述1.4 C+程序結(jié)構(gòu)上的特點(diǎn)c+c+源程序的實(shí)現(xiàn)一般要經(jīng)過(guò)編輯、編譯、運(yùn)行源程序的實(shí)現(xiàn)一般要經(jīng)過(guò)編輯、編譯、運(yùn)行 源程序、目標(biāo)程序、翻譯程序 三種不同類

30、型的翻譯程序:匯編程序、編譯程序、解釋程序 程序的開(kāi)發(fā)過(guò)程編輯、編譯、連接、運(yùn)行調(diào)試第1章 C+語(yǔ)言概述1.5 C+程序的實(shí)現(xiàn)基本術(shù)語(yǔ)基本術(shù)語(yǔ)源程序: 用源語(yǔ)言寫的,有待翻譯的程序目標(biāo)程序: 也稱為結(jié)果程序,是源程序通過(guò)翻譯程序加工以后所生成的程序。翻譯程序: 是指一個(gè)把源程序翻譯成等價(jià)的目標(biāo)程序的程序。第1章 C+語(yǔ)言概述1.5 C+程序的實(shí)現(xiàn)基本術(shù)語(yǔ)基本術(shù)語(yǔ) 三種不同類型的翻譯程序三種不同類型的翻譯程序匯編程序:其任務(wù)是把用匯編語(yǔ)言寫成的源程序,翻譯成機(jī)器語(yǔ)言形式的目標(biāo)程序。編譯程序:若源程序是用高級(jí)程序設(shè)計(jì)語(yǔ)言所寫,經(jīng)翻譯程序加工生成目標(biāo)程序,那么,該翻譯程序就稱為“編譯程序”。解釋程序:這也是一種翻譯程序,同樣是將高級(jí)語(yǔ)言源程序翻譯成機(jī)器指令。它與編譯程序不同點(diǎn)就在于:它是邊翻譯邊執(zhí)行的,即輸入一句、翻譯一句、 執(zhí)行一句,直至將整個(gè)源程序翻譯并執(zhí)行完畢。第1章 C+語(yǔ)言概述8. 實(shí)現(xiàn)第一個(gè)C+程序程序的開(kāi)發(fā)實(shí)現(xiàn)過(guò)程程序的開(kāi)發(fā)實(shí)現(xiàn)過(guò)程 編輯 將源程序輸入到計(jì)算機(jī)中,生成后綴為cpp的磁盤文件。 編譯 將程序的源代碼轉(zhuǎn)換為機(jī)器語(yǔ)言代碼。 將多個(gè)源程序文件以及庫(kù)中的某些文件連在一起,生成一個(gè)后綴為exe的可執(zhí)行文件。 運(yùn)行調(diào)試第

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論