面向对象思想(C++)
- 类总是能自己照顾自己。而这里的关键是写好析构函数、重载赋值运算符函数和拷贝构造函数。
- 派生类继承基类的所有方法,以下情况除外:
1.基类的构造函数(包括拷贝构造函数)和析构函数;
2.基类的重载操作符;
3.基类的友元函数。 - 自定義類對象也可以用operator<<完成對象數據向cout的輸出,但要提供以自定義類型為參數的operator<<的重載函數。
- 類的靜態成員數據生命期與進程等長。靜態成員數據初始化在類外進行。
- C++中有兩種多態性,編譯時的多態性和運行時的多態性。前者體現在函數的重載和運算符的重載,即同一函數名或同一運算符在不同的情況下含義不同;而運行時的多態性是指在程序執行前,無法根據函數名和參數來確定該調用哪一個函數,必須在執行過程中,根據執行的具體情況來動態地確定。
- 在派生類中重新定義虛函數時,不必加關鍵字virtual。
某一個類的成員函數被定義為虛函數,則由該類派生出來的所有派生類中,該函數始終保持虛函數的特征。
純虛函數:
virtual 返回類型 函數名(參數表)= 0;
“=0”本質上是將指向函數體的指針定為NULL。