運算子過載
運算子過載的一般格式:
operatorop(args)
呼叫形式如下,假設定義了加法運算子。
a = b + c
a = b.operator+(c)
以下運算子只能通過成員函式過載: =()
->
友元函式
友元有3種,分別是:友元函式、友元類、友元成員函式。
通過讓函式成為類的友元,可以賦予該函式與類成員函式相同的訪問許可權。
友元函式定義如下,函式原型放在類宣告中。
friend time operator*(double m,time& t);
在定義中要注意不要使用「::」限定符,不要在定義中使用friend關鍵字。
「<<」運算子的過載形式如下:
ostream& operator<<(ostream& os,const time& t)
這裡要注意的一點是:對於非成員函式:私有成員,必須使用友元函式進行訪問;但公有成員,可以不是友元函式。(具體怎樣訪問還需要再研究)。
c++中通過接受乙個引數的建構函式為將型別與該引數相同的值轉換為類提供了藍圖。
c primer plus 讀書筆記1
c是一種融合了控制特性的語言,是一種快速 高效 緊湊 可移植性的語言。使用c語言的7個步驟 定義程式目標 設計程式 編寫 編譯程式 執行程式 測試和除錯程式 維護和修改程式。c程式是由乙個或多個函式組成,乙個c程式必須包含乙個main 函式 函式前面必須有乙個資料型別不能使用void 每個c語句都是...
C primer plus 讀書筆記 1
1.c的可移植性很高,在乙個系統上編寫的c程式稍作修改或不經修改就可以在其他系統上執行。2.程式設計的步驟 1 定義程式的目標 2 設計程式 程式如何完成目標,使用者介面如何,程式怎樣組織和執行,如何表達和處理資料,考慮魯棒性 例如使用者輸入失誤怎樣處理 邊界的處理.3 編寫 可以在文件txt編寫,...
C primer plus 讀書筆記(3)
1.系統預設將非整數儲存為double型,所以在計算時會出現將double型轉為float型的警告。2.f float型和double型 d int型 o 八進位制整數型 o 加上 號會有字首0 x 十六進製制整數型 x 加上 號會有字首0x u unsigned int ld long int l...