C++类重点难点
1.構造函數與析構函數
1.1 在創建對象的時候會執行構造函數,對對象的成員屬性進行初始話,在對象的生命周期結束時,執行析構函數;
1.2 設計到動態分配內存的時候,在構造函數中進行內存分配,在析構函數中進行內存的釋放。
2.復制構造函數
2.1 復制構造函數是構造函數的一種,主要在類對象作為函數參數或者函數返回值時被調用,這時候只調用復制構造函數,而不會調用構造函數;因此,在復制構造函數中,需要對類成員屬性進行初始化和類存分配。
3.重載運算符
3.1 當我們用一個類對象賦值給另一個類對象是,需要重載 = ,將類成員屬性賦值另一個對象。在涉及到內存分配的類是,需要判斷分配的內存大小是否一樣,若大小不一樣,則無法賦值。或者在有復制構造函數的情況下,可以重現創建一個局部對象然后賦值后,將這個對象返回。
3.2 在沒有定義賦值狗造函數的時候,當一個類對象作為函數返回值時,這個對象會在函數返回后,被析構掉,這時可以通過new 來創建這個對象,然后返回這個對象,這時這個對象不會被析構掉,這個對象需要delete來釋放,才會執行析構函數。
總結
- 上一篇: linux的基础知识——shell基础
- 下一篇: QT高级编程之基本函数用法