c++整理(二)面向對象

一.類聲明:私有放數據成員,公有放函數成員,私有成員通過成員函數來訪問,公有成員可以直接被類對象的程序直接訪問

函數定義:用作用域解析運算符來指出成員函數屬於哪個類

類成員函數通過類對象來調用,使用句點運算符

二.構造函數

用來初始化函數,使用對象調用方法

三.析構函數

stock::~stock()   {}

不承擔任何重要的工作,完成清理工作

this指針指向用來調用成員函數的對象,作爲隱藏函數傳遞給方法

類聲明放在頭文件中,定義成員函數的源代碼放在方法文件中

友元函數:可以訪問類的私有成員,聲明前面加關鍵字friend

運算符重載函數可以作爲成員函數,友元函數,普通函數。普通函數:通過類的公共接口間接訪問私有成員;成員函數:可通過this指針訪問本類的成員,可以少寫一個參數,但是表達式左邊的第一個參數必須是類對象,通過該類對象來調用成員函數;友元函數:左邊一般不是對象。<< >>運算符一般都要申明爲友元重載函數。

重載的運算符不必是成員函數,可以用友元函數來實現,但是必須至少有一個操作數是用戶自定義的類型(對象類型本身)。

explicit關鍵字:該構造函數只能用於顯式轉換

定義轉換函數才能將類對象轉換成其他類型

默認構造函數:  String::String {len=0;str=new char[1];str[0]='\0';}

複製構造函數:將新對象顯式初始化爲現有的對象

不能通過對象調用靜態成員函數 int count=String::function();

new有兩種用法:(1)申請內存,但位置由系統或編譯器指定,與delete搭配進行動態內存管理;(2)在指定位置申請內存,由程序員指定,如在某一數組空間上,但釋放時較麻煩;(p2 = new (buffer) int[10];)


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章