2022年3月22日 C++學習總結
C++——面向物件程式設計思想
1、封裝、繼承、多型
2、構造和解構函式
3、函式的分檔案編寫
(1)建立.h檔案
(2)建立.cpp檔案
(3)在標頭檔案中寫函式宣告
(4)在原始檔中寫函式的定義
4、程式的記憶體模型
(1)程式碼區
(2)全域性區
(3)堆區(手動開闢new,手動釋放delete)
(4)棧區(自動)
5、引用
資料型別 &別名=原名
6、函式過載
operator+()過載加號
7、封裝——將屬性和行為看做一個整體進行實現
public、private、prodect;
8、物件特性
(1)建構函式:初始化
解構函式:清理
(2)建構函式分類及呼叫
有參建構函式 無參建構函式 拷貝建構函式
(3)this指標指向被呼叫成員函式所屬的物件。注:*this返回物件本身(鏈式程式設計思想)
8、友元——可以訪問私有內容
9、運算子過載——重新定義符號進行運算
10、繼承
子類繼承父類中的成員函式、成員變數。
11、多型——由多種形態表現出來
條件:有繼承關係;子類重寫父類中的虛擬函式;函式型別、函式名、引數列表要完全相同
使用:父類的指標或引用 執行子類物件
(1)在函式前面加virtual(虛擬函式),會發生地址晚繫結
(2)相當於重寫父類中的虛擬函式,使其執行子類中的函式
(3)父類中的虛擬函式沒有用,不執行,所以可以變成純虛擬函式,例如virtual Anmial()=0;類也稱為抽象類。
12、容器:
(1)string 字串陣列。append、find、substr
(2)vector單端陣列,可以動態擴充套件push_back、insert
(3) deque雙端陣列,可以從前後進行操作
(4)stack棧 先進後出 只有一個出口
(5)list連結串列 實體地址儲存不連續,靠指標進行連線
(6)set集合 元素自動排序,不能出現重複元素
(7)map字典 insert、make_pair操作;