將乙個類的物件作為另乙個類的成員,被稱作組合或包含。
我認為最典型的組合是在圖書管理系統中。先寫了乙個time類,裡面有成員year,month,day這樣的成員,之後在寫book類、students類的時候,可以分別設乙個time類的物件,分別作為這兩個類的成員,作為圖書出版時間和使用者註冊時間。
總結相關知識點如下:
建立包含物件成員的組合物件時,會執行成員類的建構函式初始化物件成員。例如:
class
book
book
(time tt,string n):t
(tt)
,name
(n)}
;//析構函式的執行次序和建構函式相反。
如果沒有在初始化列表中對成員物件進行顯式的初始化,編譯器會執行成員物件的預設建構函式,如果成員物件所屬的類不存在預設的建構函式,會引起編譯錯誤。
stl: standard template library
stl是演算法 泛型演算法 和其他的一些元件的集合
stl是c++標準的乙個重要的組成部分。
stl的主要元件://他並不是僅僅針對某種型別而是對於很多態別。
container(容器)
algorithm(演算法)
iterator(迭代器)
function object(函式物件)
#include
#include
#include
//動態陣列
#include
#include
using
namespace std;
intmain()
容器:容納,包含一組資料元素的物件,支援了軟體設計中常用的先行群體。
迭代器:提供的順序訪問容器中每個元素的方法,含類似指標的用法。
s.begin():容器s的第乙個元素
s.end():容器s的最後乙個元素的後面。
ostream_iterator(cout," "):構造出來的輸出迭代器物件,通過cout輸出int型資料,中間用空格(「 」)隔開。
用迭代器要用#include
演算法:stl提供大量具有統一性的演算法,可以廣泛用於不同的物件和內建函式型別。
迭代器對於儲存在容器中的元素序列進行遍歷,提供的訪問容器中每個元素的方法。
指標是迭代器中的一種,
輸入流迭代器和輸出流迭代器
輸入流,輸出流
1.標準類:stream,ostream
2 例項cin ,cout
容器的通用功能
這一部分主要是鞏固了大一下學期所學的stl,現在才得以搞清楚stl用起來的方便與便利。
stl的最主要的兩個特點:資料結構和演算法的分離,非物件導向本質。訪問物件是通過象指標一樣的迭代器實現的;容器是象鍊錶,向量之類的資料結構,並按模板方式提供;演算法是函式模板,用於操作容器中的資料。由於stl以模板為基礎,所以能用於任何資料型別和結構。
在我們學習中雖然stl提供了方便但是還是要踏踏實實的去完成老師布置的任務,多探索,學習能力真的很重要!
C 階段總結
通過6周的時間去學習c 我們學習了復合資料型別,例如struct結構體 列舉型別 string字串 指標等,類和物件的應用,運算子的過載等。其中又細講了函式過載,構造和析構函式 預設建構函式 用初始化列表進行初始化等 友元函式和友元類,類的包含 組合 運算子的過載 一元二元 等。我覺得在講這些內容概...
C 學習階段總結
一,復合型別 1.指標和引用 指標可以持有物件的位址,引用則是物件的別名。指標持有乙個物件的位址,稱為指標指向這個物件。定義指標變數的語法為型別 指標變數指標存放指定型別的物件的位址,要獲取物件的位址使用取位址運算子 例如 int ival 120 int pi ival char ch a pc ...
C 陣列階段總結
陣列的學習告一段落,但正所謂溫故而知新,階段性總結對鞏固記憶及加深掌握很有幫助,所以還是要總結一波陣列的要點。首先陣列的特性是記憶體連續,型別相同,它的型別基本涵蓋c 大部分型別,其陣列名既是記憶體首位址又是陣列識別符號,而長度表示式要求是常量,這在形參作表示式時很關鍵。int arr 1 陣列的訪...