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

正文內(nèi)容

c第1章(類和對象)-在線瀏覽

2024-12-03 15:50本頁面
  

【正文】 ,大大提高了軟件維護的效率。 類代表了某一批對象的共性和特征。 12 類的聲明和對象的定義 類和對象的關系 ?在 C++中也是先聲明一個類類型,然后用它去定義若干個同類型的對象??梢哉f類是對象的模板,是用來定義對象的一種抽象類型。 在 C++中聲明一個類類型和聲明一個結構體類型是相似的。 char name[20]。 }。 聲明類類型 現(xiàn)在聲明一個類: class Student //以 class開頭 { int num。 char sex。 cout″name:″nameendl。 } }。 ?一般是把數(shù)據(jù)隱蔽起來,而把成員函數(shù)作為對外界的接口。 char name[20]。 public: //聲明以下部分為公用的 void display( ) {cout″num:″numendl。 cout″sex:″sexendl。 Student stud1, stud2。 public: 公用的數(shù)據(jù)和成員函數(shù) 。 private和 public稱為成員訪問限定符 (member access specifier)。 ? 如果在類體中既不寫關鍵字 private, 又不寫public, 就默認為 private。每個部分的有效范圍到出現(xiàn)另一個訪問限定符或類體結束時為止。 ( 1) class 類名 對象名 如 class Student stud1,stud2。 2. 在聲明類類型的同時定義對象 class Student //聲明類類型 { public: //先聲明公用部分 void display( ) {cout″num:″numendl。 cout″sex:″sexendl。 char name[20]。 }stud1, stud2。 //定義了兩個無類名的類對象 struct Student //用關鍵字 struct來聲明一個類 { private: //聲明以下部分為私有的 int num。 char sex。 cout″name:″nameendl。 } }。 //定義了兩個 Student類的對象 類和結構體類型的異同 ?用 struct聲明的類,如果對其成員不作private或 public的聲明,系統(tǒng)將其默認為public。 ?如果希望成員是公用的,使用 struct比較方便,如果希望部分成員是私有的,宜用 class。 ?類的成員函數(shù) (簡稱類函數(shù) )是函數(shù)的一種,屬于一個類的成員,出現(xiàn)在類體中。 13 類的成員函數(shù) 成員函數(shù)的性質(zhì) ?成員函數(shù)可以訪問本類中 任何成員 (包括私有的和公用的 ),可以引用在本作用域中有效的數(shù)據(jù)。 ?并非要求把所有成員函數(shù)都指定為 public。 class Student { public: void display( )。 string name。 //以上 3行是私有數(shù)據(jù)成員 }。 //函數(shù)體 cout″name:″nameendl。 } Student stud1,stud2。 ?如果在作用域運算符 “ ∷ ” 的前面沒有類名,或者函數(shù)名前面既無類名又無作用域運算符 “ ∷ ” ,如 ∷ display( ) 或 display( ) 則表示 display函數(shù)不屬于任何類,這個函數(shù)不是成員函數(shù),而是全局函數(shù),即非成員函數(shù)的一般普通函數(shù)。 ?如果一個函數(shù),其函數(shù)體只有 2~3行,一般可在聲明類時在類體中定義。 ?如果在類體中定義的成員函數(shù)中不包括循環(huán)等控制結構, C++系統(tǒng)會自動將它們作為內(nèi)聯(lián) (inline)函數(shù)來處理。 cout″name:″nameendl。 } private: int num。 char sex。 注意: ? 如果成員函數(shù)不在類體內(nèi)定義,而在類體外定義,系統(tǒng)并不把它默認為內(nèi)置 (inline)函數(shù)。 class Student { public: inline void display( )。 string name。 }。 cout″name:″nameendl。 } ?如果在類體外定義 inline函數(shù),則必須將類定義和成員函數(shù)的定義都放在同一個頭文件中 (或者寫在同一個源文件中 ),否則編譯時無法進行置換 (將函數(shù)代碼的拷貝嵌入到函數(shù)調(diào)用點 )。 ?用類去定義對象時,系統(tǒng)會為每一個對象分配存儲空間。 成員函數(shù)的存儲方式 ?C++編譯系統(tǒng)只用一段空間來存放這個共同的函數(shù)代碼段,在調(diào)用各對象的函數(shù)時,都去調(diào)用這個公用的函數(shù)代碼。 class Time {public: int hour。 int sec。} }。 ?雖然調(diào)用不同對象的成員函數(shù)時都是執(zhí)行同一段函數(shù)代碼,但是執(zhí)行結果一般是不相同的。 需要說明: (1) 不論成員函數(shù)在類內(nèi)定義還是在類外定義,成員函數(shù)的代碼段都用同一種方式存儲。 訪問對象中的成員可以有 3種方法: ?通過對象名和 成員運算符 訪問對象中的成員 。 ?通過對象的 引用變量 訪問對象中的成員。 //假設 num已定義為公用的整型數(shù)據(jù)成員 訪問對象中成員的一般形式為 對象名 .成員名 通過對象名和成員運算符訪問對象中的成員 ?只能訪問 public成員,而不能訪問 private成員,如果已定義 num為私有數(shù)據(jù)成員,下面的語句是錯誤的: =10101。在一個類中應當至少有一個公用的成員函數(shù),作為對外的接口,否則就無法對對象進行任何操作。 int minute。 Time t,*p。t。 //輸出 p指向的對象中的成員 hour 在 p指向 t的前提下, phour, (*p).hour和 者等價。 //定義對象 t1 Time amp。 //定義 Time類引用變量 t2, 并
點擊復制文檔內(nèi)容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1