足跡C primer 49 過載,轉換,運算子

2021-06-22 20:27:32 字數 908 閱讀 9736

過載,轉換,運算子

operator type() const

conversions to

an array or a function type are not permitted.

轉換函式必須是成員函式,不能指定返回 型別,必須有乙個空的引數列表。

函式通常應 const。

定義乙個類,表示乙個在0到255範圍類的乙個整數

class smallint

explicit operator int() const //轉換操作符,不能有引數,是成員函式,沒有返回型別

private:

size_t val;

};

實現以下:

void fun1()

void fun2()

explicit operator int() const //轉換操作符,不能有引數,是成員函式,沒有返回型別

private:

size_t val;

};void fun1()

/**conversion operators can yield suprising results

過載操作符能產生驚人的結果

*/void fun2()

{ int i=42;

// cin《我來說一下,人活在這世界上肯定會遭遇很多不幸和痛苦,而且一般這種不幸的事從來都不是乙個乙個來的,他們會在你措手不及的時候一下子全來了,就像精明的獵人,在你露出破綻的一瞬間把全部的活力傾瀉在你的身上,確保萬無一失。

每個人不可能一輩子都不犯錯,但是當厄運來臨的時候我們要時刻準備好,不要驚慌失措,冷靜下來,好好想一想你應該如何去面對!

足跡C primer 49 超載,更改,運營商

超載,更改。運營商 operator type const conversions to an array or a function type are not permitted.轉換函式必須是成員函式。不能指定返回 型別,必須有乙個空的引數列表。函式通常應 const。定義乙個類,表示乙個在0到...

C Primer筆記 14 過載操作符與轉換

過載操作符的定義 過載操作符是具有特殊名稱的函式 保留字operator後接需定義的操作符符號。過載操作符具有返回型別和形參表。eg sales item operator const sales item const sales item 過載操作符必須具有乙個類型別運算元 用於內建型別的操作符其...

C 14 過載操作符與轉換

cat.h pragma once include include using std string using std ostream using std istream class cat cat string name name name 過載輸入 輸出操作符 若供外部使用,寫非成員函式的樣子...