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

2021-04-23 06:51:59 字數 864 閱讀 5937

如何過載增量運算子 ++ 和 --

運算子++和—有前置和後置兩種形式,如果不區分前置和後置,則使用operator++( )或operator--( )即可;否則,要使用operator++( )或operator--( )來過載前置運算子,使用operator++(int)或operator--(int)來過載後置運算子,呼叫時,引數int被傳遞給值0。如下列程式段:#include

class clock

;void clock::inconesecond( )}}

clock::clock(int newhour , int newminute, int newsecond)

else  cout<<」time error!」;

}void clock::showtime( )

如果++為後增量運算子時,過載函式的一般格式為:

< type > classname :: operator ++ ( int  )

(2) 非成員函式形式的過載

以++ 為例說明

用友元函式來實現「++」運算子的過載時,前置++運算子的過載的一般格式:

friend operator ++ (classname & );

其中,第乙個引數是要實現++運算的物件。

後置++運算子的過載的一般格式:

friend operator ++(classname &,int);

其中,第乙個引數是要實現++運算的物件;而第二個引數除了用於區分是後置運算外,並沒有其他意義,故起引數可有可無.

自增運算子 與 自減運算子

字首形式的 操作符出現在運算元的前面。例如 a 說明 運算元的值被相加,而表示式的值就是運算元增加後的值。舉例 int a,b 1 a b b增加至2,a得到的值為2 字尾形式的 操作符出現在運算元的後面。例如 a 說明 運算元的值仍被相加,而表示式的值是運算元增加前的值。舉例 int a,b 1 ...

自增自減運算子

自增自減運算子 i 先使用i,然後i i 1 i 先使用i,然後i i 1 i 先i i 1然後使用i i 先i i 1 然後使用i 以下使用vc下除錯的結果,不同的編譯器可能有不同的結果。i 3 例1printf d i 結果輸出4 例2printf d i 結果輸出3 例3printf resu...

自增 ,自減 運算子

自增1運算子記為 其功能是使變數的值自增1。自減1運算子記為 其功能是使變數值自減1。自增1,自減1運算子均為單目運算,都具有右結合性。可有以下幾種形式 i i自增1後再參與其它運算。i i自減1後再參與其它運算。i i參與運算後,i的值再自增1。i i參與運算後,i的值再自減1。在理解和使用上容易...