




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、復習:復習:指針數組vs.數組指針int *p110;int (*p2)10;指針數組:指針數組:首先它是一個數組,數組的元素都是指針,數組占多少個字節(jié)由數組本身決定。它是“儲存指針的數組”的簡稱。數組指針:數組指針:首先它是一個指針,它指向一個數組。在32 位系統下永遠是占4 個字節(jié),至于它指向的數組占多少字節(jié),不知道。它是“指向數組的指指向數組的指針針”的簡稱。1復習:復習:指針數組vs.數組指針2int *p110; 指針數組指針數組int (*p2)10; 數組指針數組指針“”的優(yōu)先級比“*”要高。如何使用:如何使用:指針數組定義 int *p1n;優(yōu)先級高,先與p1結合成為一個數組,
2、再由int*說明這是一個整型指針數組,它有n個指針類型的數組元素。這里執(zhí)行這里執(zhí)行p1+1是錯誤的,這樣賦值也是錯誤的:是錯誤的,這樣賦值也是錯誤的:p=a;因為p是個不可知的表示,只存在只存在p10、p11、p12.p1n-1,而且它們分別是指針變量可以用來存放變量地址。如要將二維數組賦給一指針數組:int *p13;int a34;for(i=0;i3;i+)p1i=ai;這里int *p13 表示一個一維數組內存放著三個指針變量,分別是p10、p11、p12所以要分別賦值。3如何使用:如何使用:數組指針定義 int (*p2)n;()優(yōu)先級高,首先說明p是一個指針,指向一個整型的一維數組
3、,這個一維數組的長度是n,也可以說是p的步長。也就是說執(zhí)執(zhí)行行p+1時,時,p要跨過要跨過n個整型數據的長度個整型數據的長度。如要將二維數組賦給一指針,應這樣賦值:int a34;int (*p2)4; /該語句是定義一個數組指針,指向含4個元素的一維數組。 p2=a; /將該二維數組的首地址賦給p2,也就是a0或&a00 p2+; /該語句執(zhí)行過后,也就是p2=p2+1;p跨過行a0指向了行a1所以數組指針數組指針也稱指向一維數組的指針,亦稱行指針行指針。4總結:總結:指針數組vs.數組指針數組指針數組指針只是一個指針變量一個指針變量,似乎是C或C+語言里專門用來指向二維數組指向二維
4、數組的,它占有內存中一個指針的存儲空間。指針數組指針數組是多個指針變量多個指針變量,以數組形式存以數組形式存在內存當中在內存當中,占有多個指針的存儲空間。5C+類類C+類為了支持面向對象程序設計,C+在C語言結構體(struct)數據類型的基礎上引入了類這種抽象數據類型。C+面向對象編程實質上就是面向類編程,只有定義和實現了類,才能聲明屬于這個類的對象,才能通過對象使用定義的成員。傳統C程序員把編程重點放在函數的編寫上,而C+程序員把重點放在類的定義和實現上。C+類類類的定義與實現C+類將對象的屬性抽象為數據成員,將對象的行為抽象為成員函數,并對它們進行封裝。數據成員又稱成員變量,成員函數又稱
5、為方法。C+類在形式上類似于C語言中用戶自定義的結構體類型,但定義類時規(guī)定了成員的訪問控制權限。類的定義分為聲明部分聲明部分和實現部分實現部分:聲明部分用來說明該類的成員,主要說明聲明部分用來說明該類的成員,主要說明“干什么干什么”實現部分對成員函數的具體操作進行定義,主要闡述實現部分對成員函數的具體操作進行定義,主要闡述“怎怎么干么干”O(jiān)bject Oriented Programming 8世界中的實體通過抽象生成類的過程世界中的實體通過抽象生成類的過程實體 屬性 行為 現實世界 抽象 程序設計 (數據,數據,) (函數,函數,) public private C+類名 C+類類C+類的聲
6、明形式類是一種用戶自定義類型,聲明形式:class private:;public:;protected:;無順序關系,無順序關系,每部分允許每部分允許出現多次出現多次C+類類公有類型成員在關鍵字public后面聲明,它們是類與外部的接口,任何外部函數都可以訪問公有類型數據和函數, 但必須通過一個對象作為對象的成員使用。C+類類私有類型成員在關鍵字private后面聲明,只允許本類中的函數訪問,而類外部的任何函數都不能訪問。如果緊跟在類名稱的后面聲明私有成員,則關鍵字private可以省略。C+類類保護類型成員在關鍵字protected后面聲明。與private類似,其差別表現在繼承與派生時對
7、派生類的影響不同。C+類類class Timeprivate:/ 最好不要省略最好不要省略private int hour;/ 數據成員,表示小時數據成員,表示小時 int minute;/ 數據成員,表示分鐘數據成員,表示分鐘 int second;/ 數據成員,表示秒數據成員,表示秒public: void setTime(int, int, int);/ 成員函數,設置時間成員函數,設置時間 void showTime();/ 成員函數,輸出時間成員函數,輸出時間;例 定義類定義類Time(表示時間)。(表示時間)。私有數據成員私有數據成員hourhour、minuteminute和和s
8、econdsecond只能在類的成員只能在類的成員函數中被訪問或賦值;函數中被訪問或賦值;公有成員函數公有成員函數setTimesetTime、showTimeshowTime可在外部被調用,但必須通過一個可在外部被調用,但必須通過一個對象作為對象的成員使用。對象作為對象的成員使用。C+類類類的實現類的實現實質上是類的成員函數的實現,即定義類的成員函數。成員函數的定義形式與一般函數的定義形式基本相同,但必須在成員函數名前加上類名和作用域限定符(:)。成員函數的定義也可放在類體內(該函數聲明之處),這時成員函數將變成內聯函數。C+類類例 類Time的實現void Time:setTime(int
9、 h, int m, int s) hour=(h=0 & h=0 & m=0 & s60) ? s:0;void Time:showTime() couthour:minute:second成員名”方式訪問 public 屬性的成員C+類類例:類Time的使用,聲明對象并設置對象屬性main() Time EndTime;/ 聲明對象EndTime EndTime.setTime(12, 23, 36);/ 設置對象EndTime的時間 coutThe time is:; EndTime.showTime();/ 顯示對象EndTime的時間階段課程小結理解結構化設計
10、方法與面向對象方法的區(qū)別熟悉面向對象的程序設計方法,學習用面向對象的方法設計程序 理解掌握下列定義:對象、類、封裝、繼承、多態(tài)性對象、類、封裝、繼承、多態(tài)性類的三個組成部分:類名、屬性和方法類名、屬性和方法理解封裝與繼承的意義,以及與對現實世界抽象的聯系多態(tài)性及其作用。熟悉類的定義、實現和使用了解對象和類的關系階段小結(續(xù))例:輸入任意短語或句子,計算該短語包含多少個字(word)和字符(character)。注意:輸入短語時,必須在字和字之間只空一格面向過程的方法#include #include void main() char ch; int wdcount,chcount; wdcou
11、nt=1; chcount=0; printf(*:Please input any phrasen); while(ch=getche()!=r) /r表示換行 chcount+; if(ch= ) wdcount+; printf(n*:The number of word is %dn,wdcount); printf(n*:The number of char is %dn,chcount);面向對象方法#include #include class countpublic: count(); void process(); void display();private: int wd
12、count,chcount;count:count() wdcount=1; chcount=0;void count:display() printf(n*:The number of word is %dn,wdcount); printf(n*:The number of char is %dn,chcount);void count:process() char ch; cout*:Please input any phrasech; while(ch=getche()!=r) chcount+; if(ch= ) wdcount+; coutendl; void main() count A; A.process(); A.display();運行結果:運行結果:*Please input any phrase.I am a teacher*:The number of word is 4*:The number of char is 14*是一種數學思維或計算機是一種數學思維或計算機思維方法,與人們認識世思維方法,與人們認識世界的方法不同界的方法不同 *以不穩(wěn)定的、多變的以不穩(wěn)定的、多變的“過過程程”和和“操作操作” 為中心來為中心來構造系統構造系統 *可重用性較差可重用性較差*是建
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)培訓課件PPR模板
- 企業(yè)培養(yǎng)新人課件
- 車輛銷售代理及市場拓展承包協議
- 企業(yè)國有產權管理課件
- 智能化木結構廠房建造與物聯網技術集成合同
- 跨國勞務派遣與勞動合同
- 高速營銷方案么
- 文創(chuàng)園區(qū)整體租賃與文化產業(yè)項目開發(fā)合同
- 體育館餐飲服務承包與賽事配套保障合同
- 鉆井堵漏技術方案
- 《烏魯木齊市國土空間總體規(guī)劃(2021-2035年)》
- HJ 651-2013 礦山生態(tài)環(huán)境保護與恢復治理技術規(guī)范(試行)
- SY-T 5333-2023 鉆井工程設計規(guī)范
- 冠脈介入進修匯報
- 敘事護理學智慧樹知到期末考試答案章節(jié)答案2024年中國人民解放軍海軍軍醫(yī)大學
- 2024四川省南部縣事業(yè)單位招聘45人歷年公開引進高層次人才和急需緊缺人才筆試參考題庫(共500題)答案詳解版
- PDCA提高臥床患者踝泵運動的執(zhí)行率
- NBT《風電場工程施工質量檢驗與評定規(guī)程》
- 兒科護理安全不良事件
- 中國硒化汞行業(yè)市場現狀分析及競爭格局與投資發(fā)展研究報告2024-2029版
- 票務購票合同
評論
0/150
提交評論