1幸缕、const
類的成員函數后加const如(void mm()const)后悔详,const屬于簽名涵亏,與不加const是兩個不同的函數宰睡。const對象只能調用const成員函數蒲凶,非const對象可以調用const和非const函數(當const和非const成員函數均存在,優(yōu)先調用非const對象)拆内。
2旋圆、operator new和operator delete的重載
兩個函數的聲明:
void* operator new(size_t) ? ?void operator delete(void* )
當動態(tài)分配內存時,這兩個有關內存的函數會被調用麸恍。若在全局作用域重載灵巧,會被每個類調用,也可聲明為某個類的static成員函數(只有這個類會調用)抹沪,如果使用時想忽略重載的刻肄,可以寫成::new Foo();重載operator new時的第一個參數必須為size_t 類型融欧。
3肄方、static函數和數據
static數據在類內聲明,在類外定義蹬癌,static函數只能調用static數據权她,沒有this指針。他們的訪問規(guī)則遵從private和public聲明逝薪。