青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

積木

No sub title

  C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
  140 Posts :: 1 Stories :: 11 Comments :: 0 Trackbacks

常用鏈接

留言簿(1)

我參與的團隊

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

1) 不論是 increment 或 decrement 的前綴還是后綴都只有一個參數。為了解決這個語言問題,C++
規定后綴形式有一個 int 類型參數,當函數被調用時,編譯器傳遞一個 0 做為 int 參數的值
給該函數(即:decrement函數)。示例如下:
/******************************************************************************
@-Author  : Jacc.Kim
@-create  : [11-25-2013 20:33:55]
@-summary : c++的increment與decrement學習
@-modified: 
*****************************************************************************
*/
class UPInt
{
public:
    
/**************************************************************************
    @-summary : ++ 前遞增操作符重載
    @-in param: 
    @-return  : 
    @-!!!note : 1) 該函數返回的是當前對象自增后的引用。一定注意:是引用。
    @-          2) 該函數沒有輸入參數
    @-          3) 下面的 -- 前遞減操作符重載類似
    *************************************************************************
*/
    UPInt 
&operator++() {
        
// 處理遞增操作
        
// 
        
// some code here ..
        
// 
        
// 返回自身實例
        return *this;
    }

    
/**************************************************************************
    @-summary : ++ 后遞增操作符重載
    @-in param: 
    @-return  : 
    @-!!!note : 1) 該函數返回的是當前對象自增前的一個const副本。一定注意:是const副本。
    @-          2) 該函數接受一個int型參數,但實際上,該參數是沒有任何作用的。
    @-          3) 下面的 -- 后遞減操作符重載類似
    *************************************************************************
*/
    
const UPInt operator++(int) {
        UPInt retObj 
= *this;
        
++(*this);
        
return retObj;
    }

    
/**************************************************************************
    @-summary : -- 前遞增操作符重載
    @-in param: 
    @-return  : 
    @-!!!note : 1) 該函數返回的是當前對象自減前的引用。一定注意:是引用。
    @-          2) 該函數沒有輸入參數
    *************************************************************************
*/
    UPInt 
&operator--() {
        
// 處理遞減操作
        
// 
        
// some code here ..
        
// 
        
// 返回自身實例
        return *this;
    }

    
/**************************************************************************
    @-summary : ++ 后遞減操作符重載
    @-in param: 
    @-return  : 
    @-!!!note : 1) 該函數返回的是當前對象自減前的一個const副本。一定注意:是const副本。
    @-          2) 該函數接受一個int型參數,但實際上,該參數是沒有任何作用的。
    *************************************************************************
*/
    
const UPInt operator--(int) {
        UPInt retObj 
= *this;
        
--(*this);
        
return retObj;
    }

public:
    UPInt();
    
virtual ~UPInt();

};
//class UPInt

/******************************************************************************
@-summary : 示例使用UPInt的 ++ 與 -- 的前、后操作符重載
@-in param: 
@-return  : 
*****************************************************************************
*/
void testUPIntIncAndDecOperator() {
    UPInt theObj;
    
++theObj; // 調用 theObj.operator++(); 
    theObj++// 調用 theObj.operator++(0);
    --theObj; // 調用 theObj.operator--(); 
    theObj--// 調用 theObj.operator--(0);
}


2) 為什么前綴與后綴的返回值會不同??
答:一個后綴 increment 必須返回一個對象(它返回的是增加前的值),但是為什么
是 const 對象呢?假設不是 const 對象,下面的代碼就是正確的:
UPInt i;
i++++; // 兩次 increment 后綴
這組代碼與下面的代碼相同:
i.operator++(0).operator++(0);
很明顯,第一個調用的 operator++函數返回的對象調用了第二個 operator++函數。
有兩個理由導致我們應該厭惡上述這種做法,第一是與內置類型行為不一致。當設計一
個類遇到問題時,一個好的準則是使該類的行為與 int 類型一致。而 int 類型不允許連續進
行兩次后綴 increment:
int i;
i++++; // 錯誤!
第二個原因是使用兩次后綴 increment 所產生的結果與調用者期望的不一致。如上所
示,第二次調用 operator++改變的值是第一次調用返回對象的值,而不是原始對象的值。
因此如果:
i++++;
是合法的,i 將僅僅增加了一次。這與人的直覺相違背,使人迷惑(對于 int 類型和 UPInt
都是一樣),所以最好禁止這么做。

3) 同樣條件下,前綴比后綴操作符來的高效。
posted on 2013-11-25 20:50 Jacc.Kim 閱讀(795) 評論(0)  編輯 收藏 引用 所屬分類: VC / C++
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久久精品五月天| 欧美高清在线观看| 国产亚洲精品aa午夜观看| 午夜精品一区二区三区在线播放| 国产一区二区观看| 久久久亚洲精品一区二区三区| 午夜一区二区三区不卡视频| 一本到高清视频免费精品| 国产精品高潮呻吟久久| 欧美一级久久久久久久大片| 欧美在线二区| 亚洲激情在线激情| 亚洲国产精品一区二区第四页av | 亚洲三级视频| 欧美日韩亚洲高清一区二区| 亚洲欧美三级在线| 久久久久高清| 中国成人黄色视屏| 亚洲欧美视频一区| 亚洲高清自拍| 亚洲一级二级| 亚洲精品123区| 亚洲一区二区四区| 亚洲国产欧美在线人成| 99精品视频一区| 黄色精品一区二区| 99re成人精品视频| 在线观看日韩一区| 亚洲视频在线观看一区| 极品少妇一区二区三区精品视频| 亚洲欧美成人网| 久久人91精品久久久久久不卡| 国产精品高潮呻吟久久| 久久久久久久91| 欧美日韩精品二区第二页| 久久精品夜色噜噜亚洲a∨| 欧美精品在线免费观看| 狼狼综合久久久久综合网| 欧美亚州韩日在线看免费版国语版| 亚洲精品影视| 午夜精品久久久久久久99樱桃| 欧美精品成人一区二区在线观看| 亚洲电影毛片| 亚洲欧美精品在线| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 | 性伦欧美刺激片在线观看| 亚洲精品视频免费| 久久久久九九九| 欧美中文字幕不卡| 欧美性视频网站| 亚洲人成高清| 亚洲级视频在线观看免费1级| 男男成人高潮片免费网站| 国产伦精品一区二区三区照片91| 欧美亚洲一区| 欧美小视频在线观看| 亚洲欧洲午夜| 夜夜嗨av一区二区三区网站四季av| 亚洲三级视频在线观看| 在线观看欧美日韩| 久久美女性网| 美女成人午夜| 亚洲国产高清在线| 久久亚洲综合色| 欧美大片va欧美在线播放| 激情视频一区二区三区| 久久久999成人| 美腿丝袜亚洲色图| 亚洲第一综合天堂另类专| 久久综合色一综合色88| 欧美成人小视频| 亚洲三级免费| 欧美日韩一区视频| 一区二区三区偷拍| 香蕉久久久久久久av网站| 国产乱子伦一区二区三区国色天香 | 欧美午夜精品电影| 99精品国产在热久久婷婷| 亚洲天堂av图片| 国产精品自拍三区| 久久国内精品视频| 蜜臀av性久久久久蜜臀aⅴ| 亚洲高清免费| 欧美另类专区| 亚洲一区二区视频在线观看| 久久er精品视频| 亚洲国产成人精品视频| 欧美国产一区二区| 一本到12不卡视频在线dvd| 久久av一区二区三区| 亚洲国产精品视频一区| 欧美日韩精品是欧美日韩精品| 久久综合久久久| 亚洲激情网址| 国产精品久久久久久久久婷婷 | 一区二区三区日韩欧美精品| 亚洲在线视频免费观看| 国产日韩一区二区| 久久欧美中文字幕| 一区二区三区精品视频| 玖玖玖国产精品| 亚洲少妇最新在线视频| 国产亚洲精品bt天堂精选| 免费在线看一区| 亚洲影院一区| 亚洲激情视频网站| 久久久91精品国产| 一二美女精品欧洲| 悠悠资源网亚洲青| 欧美午夜在线一二页| 美国十次了思思久久精品导航| 久久日韩粉嫩一区二区三区| 一本一本久久| 亚洲成在人线av| 国产欧美日韩91| 欧美视频免费在线观看| 卡一卡二国产精品| 欧美在线黄色| 99亚洲一区二区| 最新国产精品拍自在线播放| 玖玖玖免费嫩草在线影院一区| 韩日午夜在线资源一区二区| 欧美性事在线| 欧美日韩精品一区二区| 久久亚洲私人国产精品va媚药| 久久中文字幕导航| 亚洲女性裸体视频| 一区二区三区国产在线| 亚洲精品九九| 亚洲日本久久| 在线欧美日韩国产| 激情综合激情| 在线成人国产| 精品999在线播放| 极品少妇一区二区三区精品视频| 猫咪成人在线观看| 另类春色校园亚洲| 久久久久女教师免费一区| 欧美一区二区三区免费在线看 | 亚洲综合欧美日韩| 一本久久a久久免费精品不卡| 欧美揉bbbbb揉bbbbb| 欧美精品在线免费| 欧美日本韩国一区二区三区| 欧美激情第二页| 欧美日韩国产成人在线| 欧美福利小视频| 欧美日本高清| 国产精品久久国产精品99gif| 欧美在线免费观看视频| 亚欧成人在线| 久久免费视频网| 欧美成人在线免费视频| 欧美激情欧美狂野欧美精品| 欧美剧在线观看| 欧美日韩视频专区在线播放| 欧美午夜欧美| 国产亚洲欧美一级| 亚洲成人自拍视频| 日韩天堂av| 先锋影音国产精品| 久久香蕉精品| 亚洲国产精品嫩草影院| 一区二区三区国产在线| 欧美一区二区三区免费看 | 久久综合色播五月| 免费成人在线观看视频| 亚洲成色精品| 99riav国产精品| 欧美一区二区三区免费视| 老司机久久99久久精品播放免费 | 久久久国产成人精品| 免费视频一区二区三区在线观看| 在线一区观看| 久久精品国产精品亚洲综合| 久久精品中文字幕一区| 欧美激情一区二区三区不卡| 欧美日韩综合| 在线成人性视频| 亚洲性色视频| 美女在线一区二区| 国产精品99久久99久久久二8| 亚洲夫妻自拍| 亚洲综合不卡| 免费不卡欧美自拍视频| 国产精品高潮呻吟视频| 亚洲电影自拍| 久久www成人_看片免费不卡| 91久久国产综合久久蜜月精品| 欧美1区免费| 亚洲伊人久久综合| 欧美极品一区| 在线日韩av片| 午夜久久久久久| 亚洲精品久久久久久久久| 欧美在线观看日本一区| 国产精品久99| 宅男噜噜噜66一区二区| 女生裸体视频一区二区三区| 亚洲欧美日韩精品综合在线观看|