1.6 C+ +程序的基本框架
由于C+ +語言既支持結(jié)構(gòu)化程序設(shè)計(jì),又支持面向?qū)ο蟪绦蛟O(shè)計(jì),所以它同時(shí)具有結(jié)構(gòu)化程序設(shè)計(jì)和面向?qū)ο蟪绦蛟O(shè)計(jì)兩種基本框架。
1結(jié)構(gòu)化程序設(shè)計(jì)框架
在C+ +的結(jié)構(gòu)化程序設(shè)計(jì)框架中,函數(shù)是程序的基本組成單元。程序的主體通常由若干函數(shù)定義構(gòu)成。
函數(shù)是程序中完成一定功能的模塊。各個(gè)函數(shù)之間通過參數(shù)、返回值和全局變量來進(jìn)行數(shù)據(jù)通信。
當(dāng)編寫一個(gè)較大的程序時(shí),可以把它按照功能逐級(jí)劃分成許多相對(duì)獨(dú)立的小模塊。每個(gè)小模塊的功能由一個(gè)函數(shù)實(shí)現(xiàn),再通過適當(dāng)?shù)姆椒▽⑦@些函數(shù)組織在一起協(xié)同工作,就能夠完成整個(gè)程序所規(guī)定的任務(wù)。這種方法體現(xiàn)出了結(jié)構(gòu)化程序設(shè)計(jì)中“功能分解,逐步求精”的思想。
使用結(jié)構(gòu)化程序設(shè)計(jì)方法編寫出的C+ +程序包括一個(gè)主函數(shù)和若干用戶定義函數(shù)。主函數(shù)由操作系統(tǒng)調(diào)用,它是整個(gè)程序的入口。在主函數(shù)中調(diào)用其他函數(shù),其他函數(shù)之間也可以相互調(diào)用,并且同一個(gè)函數(shù)可以被一個(gè)或多個(gè)函數(shù)調(diào)用任意多次。在C+ +中一個(gè)函數(shù)被調(diào)用之前必須先被聲明。函數(shù)聲明和函數(shù)體放在一起組成函數(shù)定義;函數(shù)體是用花括號(hào)括起來的若干語句,它們完成了一個(gè)函數(shù)的具體功能。
一般地,一個(gè)C+ +程序的結(jié)構(gòu)化程序設(shè)計(jì)框架可以表示為:
<函數(shù)1的聲明>
<函數(shù)2的聲明>
…
<函數(shù)n的聲明>
<主函數(shù)main()>
<函數(shù)1的定義>
<函數(shù)2的定義>
…
<函數(shù)n的定義>
2面向?qū)ο蟪绦蛟O(shè)計(jì)框架
在C+ +的面向?qū)ο蟪绦蛟O(shè)計(jì)框架中,類成為程序的基本組成單元。程序的主體通常由若干類的定義構(gòu)成。
類可以把數(shù)據(jù)和函數(shù)封裝在一起,用以描述事物的屬性和對(duì)事物的操作。類與類之間一方面通過封裝而具有明確的獨(dú)立性;另一方面又通過成員、友元、參數(shù)、繼承和派生等關(guān)系,達(dá)到相互通信和聯(lián)絡(luò)的目的,從而形成一個(gè)有機(jī)的整體。
在結(jié)構(gòu)化程序設(shè)計(jì)中,除了主函數(shù)之外,所有函數(shù)之間一律“平等”,沒有層次關(guān)系可言,當(dāng)程序規(guī)模稍大時(shí),就會(huì)使整體結(jié)構(gòu)變得相當(dāng)混亂。相反,在面向?qū)ο蟪绦蛟O(shè)計(jì)中,類與類之間能夠按照邏輯關(guān)系組成有條理的層次結(jié)構(gòu),從而使一個(gè)復(fù)雜程序變得有“綱”可循。這正體現(xiàn)出面向?qū)ο笏枷氲膬?yōu)越性。
一般地,一個(gè)C+ +程序的面向?qū)ο蟪绦蛟O(shè)計(jì)框架可以表示為:
<類1的定義>
<類2的定義>
…
<類n的定義>
<主函數(shù)main()>
<類1的成員函數(shù)定義>
<類2的成員函數(shù)定義>
…
<類n的成員函數(shù)定義>
編輯推薦:
2014年上半年計(jì)算機(jī)等級(jí)考試報(bào)名時(shí)間預(yù)告
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |