freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

面向?qū)ο蟪绦蛟O(shè)計(jì)教程c語言描述-資料下載頁

2025-10-07 05:34本頁面
  

【正文】 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 this指針 ? this指針是由 C++編譯器自動(dòng)產(chǎn)生且較常用的一個(gè)隱含對象指針,它不能被顯式聲明。 ? this指針是一個(gè)局部量,局部于某個(gè)對象。 ? this指針是一個(gè)常量,它不能作為賦值、遞增、遞減等運(yùn)算的目標(biāo)對象。 ? 只有非靜態(tài)類成員函數(shù)才擁有 this指針,并通過該指針來處理對象。 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 this指針 【 例 】 分析下面程序,體會 this指針的隱式使用 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 this指針 【 例 】 分析程序結(jié)果,體會 this指針的顯式使用。 返回首頁 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 子對象和堆對象 返回首頁 子對象 堆對象 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 子對象 一個(gè)對象作為另一個(gè)類的成員時(shí),該對象稱為類的子對象。子對象實(shí)際上是某個(gè)類的數(shù)據(jù)成員。說明形式為: class X { 類名 1 子對象 1 類名 2 子對象 2 … … 類名 n 子對象 n }。 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 子對象 class A { … }。 class B { … private: A a。 … }。 例如: 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 子對象 2. 子對象的初始化 為初始化子對象, X的構(gòu)造函數(shù)要調(diào)用這些對象成員所在類的構(gòu)造函數(shù),于是 X類的構(gòu)造函數(shù)中就應(yīng)包含數(shù)據(jù)成員初始化列表,用來給子對象進(jìn)行初始化。 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 子對象 X類的構(gòu)造函數(shù)的定義形式如下: X::X( 參數(shù)表 0) : 成員 1( 參數(shù)表1) ,成員 2( 參數(shù)表 2) , … , 成員 n( 參數(shù)表 n) { …… } 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 子對象 對子對象的構(gòu)造函數(shù)的調(diào)用順序取決于這些子對象在類中說明的順序,與它們在成員初始化列表中給出的順序無關(guān)。 當(dāng)建立 X類的對象時(shí),先調(diào)用子對象的構(gòu)造函數(shù),初始化子對象,然后才執(zhí)行 X類的構(gòu)造函數(shù),初始化 X類中的其他成員。 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 子對象 【 例 】 分析下面程序中構(gòu)造函數(shù)與析構(gòu)函數(shù)的調(diào)用順序。 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 子對象 Whole類的缺省構(gòu)造函數(shù)沒有給出成員初始化列表,這表明子對象將使用缺省構(gòu)造函數(shù)進(jìn)行初始化。 例如: int main() { Whole w。 //調(diào)用缺省構(gòu)造函數(shù) return 0。 } 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 子對象 程序的輸出為: Default constructor of Part Default constructor of Part Destructor of Whole Destructor of Part,0 Destructor of Part,0 在這種情況下, Whole類必須定義一個(gè)缺省構(gòu)造函數(shù) 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 子對象 該例類 Whole中數(shù)據(jù)成員只含有 2個(gè)子對象,它的構(gòu)造函數(shù)的成員初始化列表中含有 2個(gè)對子對象進(jìn)行初始化的選項(xiàng)。如果該類中還有其他數(shù)據(jù)成員,其初始化也可通過成員初始化列表進(jìn)行。 例如: 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 子對象 class Whole { public: Whole(int i)。 Whole( ){ }。 ~Whole( )。 private: Part p1。 Part p2。 int data。 }。 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 子對象 為了初始化數(shù)據(jù)成員 data,這時(shí)該構(gòu)造函數(shù)也可以定義成如下格式: Whole::Whole(int i,j):p1(),p2(i),data(j) {……} 返回本節(jié) 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 堆對象 堆對象:是在程序運(yùn)行時(shí)根據(jù)需要隨時(shí)可以被創(chuàng)建或刪除的對象。 在虛擬的程序空間中存在一些空閑存儲單元,這些空閑存儲單元組成所謂的堆。 C++程序的內(nèi)存格局通常分為 4個(gè)區(qū): ?數(shù)據(jù)區(qū) ?代碼區(qū) ?棧區(qū) ?堆區(qū) (即自由存儲區(qū) ) 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 堆對象 1. 使用運(yùn)算符 new創(chuàng)建堆對象 使用 new運(yùn)算符可以動(dòng)態(tài)地創(chuàng)建對象,即堆對象。 使用語法為: new 類型說明符 (初始值列表 ) 例如: HeapObjectClass *pa。 pa=new (3,7)。 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 堆對象 2. 使用運(yùn)算符 delete刪除堆對象 該運(yùn)算符專門用來釋放由運(yùn)算符 new所創(chuàng)建的對象。 其使用語法為: delete 指針名 例如: delete pa。 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 堆對象 【 例 】 分析下列程序的輸出結(jié)果,注意運(yùn)算符 new和 delete的用法。 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 堆對象 3. 使用運(yùn)算符 new[ ]創(chuàng)建對象數(shù)組 其使用語法為: new 類型說明符 [算術(shù)表達(dá)式 ] 其中, 算術(shù)表達(dá)式 給出數(shù)組的大小,后面不能再跟構(gòu)造函數(shù)參數(shù),所以,從堆上分配對象數(shù)組,只能調(diào)用默認(rèn)的構(gòu)造函數(shù),不能調(diào)用其他任何構(gòu)造函數(shù)。例如: ObjectArrayClass *ptr。 ptr=new HeapObjectClass [15]。 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 堆對象 4. 使用運(yùn)算符 delete [ ]刪除對象數(shù)組 其格式如下: delete[ ] 指針名 其中, 指針名 必須是指向 new[ ]所創(chuàng)建的對象數(shù)組,且必須是 new[ ]所返回的值。 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 堆對象 【例 】分析下列程序的輸出結(jié)果,注意運(yùn)算符 new[ ]和 delete[ ]的用法。 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 類的靜態(tài)成員 返回首頁 靜態(tài)數(shù)據(jù)成員 靜態(tài)成員函數(shù) 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 靜態(tài)數(shù)據(jù)成員 靜態(tài)成員是指聲明為 static的類成員,包括靜態(tài)數(shù)據(jù)成員和靜態(tài)成員函數(shù),在類的范圍內(nèi)所有對象共享該數(shù)據(jù)。 靜態(tài)數(shù)據(jù)成員不屬于任何對象,它是類定義的一部分。類中的靜態(tài)數(shù)據(jù)成員不同于一般的靜態(tài)變量,也不同于其他的類數(shù)據(jù)成員。它在程序開始運(yùn)行時(shí)創(chuàng)建而不是在對象創(chuàng)建時(shí)創(chuàng)建。它所占空間的回收也不是在析構(gòu)函數(shù)時(shí)進(jìn)行而是在程序結(jié)束時(shí)進(jìn)行。 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 靜態(tài)數(shù)據(jù)成員 1. 靜態(tài)數(shù)據(jù)成員的初始化 必須對靜態(tài)數(shù)據(jù)成員進(jìn)行初始化,因?yàn)橹挥羞@時(shí)編譯程序才會為靜態(tài)數(shù)據(jù)成員分配一個(gè)具體的作儲空間。 靜態(tài)數(shù)據(jù)成員的初始化與一般數(shù)據(jù)成員不同,它的初始化不能在構(gòu)造函數(shù)中進(jìn)行。 靜態(tài)數(shù)據(jù)成員初始化的格式為: 數(shù)據(jù)類型 類名 ::靜態(tài)數(shù)據(jù)成員名 = 初始值 ; 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 靜態(tài)數(shù)據(jù)成員 2. 靜態(tài)數(shù)據(jù)成員的引用 靜態(tài)數(shù)據(jù)成員可說明為公有的、私有的、或保護(hù)的。若為公有的可直接訪問,引用靜態(tài)數(shù)據(jù)成員的格式為: 類名 ::靜態(tài)數(shù)據(jù)成員 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 靜態(tài)數(shù)據(jù)成員 【 例 】 用靜態(tài)數(shù)據(jù)成員的控制點(diǎn)類,每次只允許一個(gè)對象訪問。 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 靜態(tài)數(shù)據(jù)成員 【 例 】 統(tǒng)計(jì)點(diǎn)類的對象數(shù),示例靜態(tài)數(shù)據(jù)成員的記數(shù)作用。 返回本節(jié) 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 靜態(tài)成員函數(shù) 靜態(tài)成員函數(shù)的定義和其他成員函數(shù)一樣。在一般函數(shù)定義前加上 static關(guān)鍵字。 調(diào)用靜態(tài)成員函數(shù)的格式為: 類名 ::靜態(tài)成員函數(shù)名 (參數(shù)表 ); 或 對象名 .靜態(tài)成員函數(shù)名 (參數(shù)表 ); 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 靜態(tài)成員函數(shù) 【 例 】 改寫例 ,用靜態(tài)成員函數(shù)輸出點(diǎn)類的對象數(shù)。 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 靜態(tài)成員函數(shù) 【 例 】 用靜態(tài)成員函數(shù)輸出點(diǎn)的位置。 返回本節(jié) 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 類的友元 返回首頁 友元函數(shù) 友元類 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 友元函數(shù) 在類里聲明一個(gè)普通函數(shù),加上關(guān)鍵字friend,就成了該類的友元函數(shù),它可以訪問該類的一切成員。其原型為: friend 類型 友元函數(shù)名 (參數(shù)表 ); 友元函數(shù)聲明的位置可在類的任何部位,既可在 pubic區(qū),也可在 protected區(qū)。其實(shí)現(xiàn)放在類的外部。 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 友元函數(shù) 【 例 】 用友元函數(shù)求兩點(diǎn)的距離。 返回本節(jié) 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 友元類 一個(gè)類可被聲明為另一個(gè)類的友元,該類被稱為友元類。 假設(shè)有類 A和類 B,若在類 B的定義中將類 A聲明為友元,那么,類 A被稱作類 B的友元類,它所有的成員函數(shù)都可以訪問類 B中的任意成員。 友元類的聲明為: friend 類名 ; 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 友元類 例 ,將整個(gè)教師類 teacher看成是學(xué)生類 student的友元類,教師可以給學(xué)生設(shè)置學(xué)號,輸入學(xué)生成績。 【 例 】 示例友元類的使用 返回本節(jié) 第 1章 面向?qū)ο蟪绦蛟O(shè)計(jì)概論 應(yīng)用實(shí)例 返回首頁 用面向?qū)ο蟮姆椒ㄖ匦戮帉懸粋€(gè)學(xué)生成績管理程序。要求能添加、編輯、查找、刪除學(xué)生有關(guān)信息。 目的:區(qū)分面向過程與掌握面向?qū)ο蟮乃枷耄莆彰嫦驅(qū)ο蟮乃悸芳盎靖拍睢?
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1