C 基礎之自增和自減運算子的過載

2022-06-23 01:45:12 字數 737 閱讀 6805

int x = 0;

int y = 0;

// 後置自增運算子

x++;

// 前置自增運算子

++x;

// 後置自減運算子

y--;

// 前置自減運算子

--y;

template< typename t>

// 前置自增運算子:引數無

t & operator++();

// 前置自減運算子:引數無

t & operator--();

template// 後置自增運算子

t operator++(int);

// 後置自減運算子

t operator--(int);

前置運算子過載返回的的是&,而後置運算子過載返回的是臨時物件。why? 這是由於其特性決定的。 前置運算子的特性:可在後續的運算中繼續使用,而後置運算子的特性:不能作為左值,不能再後續的運算中繼續使用。

名稱步驟

前置運算子的過載

1.變數自增 2.返回引用物件

後置運算子的過載

1.建立臨時變數 2.臨時變數的增減,3.返回臨時物件

可見,應該盡量使用前置運算子的過載可以提高效能,

自增 自減運算子的過載

自增運算子 自減運算子 有前置 後置之分,為了區分所過載的是前置運算子還是後置運算子,c 規定 前置運算子作為一元運算子過載 過載為成員函式時 t operator t operator 過載為全域性函式時 t operator t t operatot t 後置運算子作為二元運算子過載,多寫乙個沒...

C 基礎 自增自減運算子

注 當自增自減運算子所在的表示式或語句中只含一種操作時 即單一表示式 則其字首和字尾功能對程式的作用時一樣的 而當含有兩個或兩個以上操作時,在考慮各個運算子的優先級別和結合性的基礎上,則其字首和字尾的功能對程式的作用時不一樣的。1 為了提高程式的效率,需要用技巧把程式寫得盡可能簡潔一些,但這樣有可能...

如何過載自增運算子 和自減運算子

如何過載增量運算子 和 運算子 和 有前置和後置兩種形式,如果不區分前置和後置,則使用operator 或operator 即可 否則,要使用operator 或operator 來過載前置運算子,使用operator int 或operator int 來過載後置運算子,呼叫時,引數int被傳遞給...