一、三大函數
從string類入手,講解Class with pointer members中3個特殊函數:
拷貝構造函數
析構函數
拷貝賦值函數
任何帶有pointer members的類必須有拷貝構造函數和拷貝賦值函數。
1.1 拷貝構造函數
copy ctor的實現時必須先分配空間,然后再進行拷貝。
1.2 拷貝賦值函數
必須先檢測自我賦值,然后分三步進行
刪除private data
分配內存空間
拷貝數據
二、堆棧以及內存管理
棧,是存在于某作用域的一塊內存空間。函數本體內聲明的任何變量,其所用內存都取自棧。
堆,是由操作系統提供的一塊全局內存空間,程序可動態分配從中取得若干區塊。
三、類模板
四、namespace的使用
可以理解為界定函數、變量的作用域。