亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        C++運(yùn)算符重載剖析

        2014-04-16 03:29:20龐新法PANGXinfa
        價(jià)值工程 2014年17期
        關(guān)鍵詞:運(yùn)算符指針個(gè)數(shù)

        龐新法 PANG Xin-fa

        (陜西省委黨校科技教研部,西安 710061)

        (Shaanxi Province Party School of the CPC,Xi'an 710061,China)

        1 緒論

        自然語(yǔ)言中的“一詞多義”,反映到程序中就是重載。例如“行動(dòng)”、“銀行”,“行”到底發(fā)何音,是何意,要根據(jù)上下文理解。

        在C語(yǔ)言中,運(yùn)算符符“-”既表示兩數(shù)相減,又表示取一個(gè)數(shù)的相反數(shù);既可作用于整型數(shù)據(jù),又可作用于實(shí)型、指針等其它類(lèi)型的數(shù)據(jù),這就是運(yùn)算符重載。C++是C功能的擴(kuò)充,比C更完善,更全面。

        所謂運(yùn)算符重載就是同一個(gè)運(yùn)算符,根據(jù)不同的數(shù)據(jù)類(lèi)型有著不同的含義和運(yùn)算,具體含義要根據(jù)上下文理解。重載擴(kuò)充了C++預(yù)定義的運(yùn)算符的運(yùn)算范圍,運(yùn)算符既可對(duì)已有數(shù)據(jù)類(lèi)型進(jìn)行運(yùn)算,又可對(duì)用戶自己定義的新類(lèi)型數(shù)據(jù)進(jìn)行運(yùn)算,方便編程。

        2 運(yùn)算符重載語(yǔ)法形式

        格式:函數(shù)類(lèi)型operator運(yùn)算符(形參表)

        {函數(shù)體;}

        功能:operator與運(yùn)算符的組合就是函數(shù)名。

        運(yùn)算符重載實(shí)質(zhì)就是函數(shù)重載,C++在編譯過(guò)程中,把operator與運(yùn)算符的組合解釋為函數(shù)名,然后按照函數(shù)的定義、引用處理。

        例1 class Co//復(fù)數(shù)類(lèi)

        可重載的運(yùn)算符

        可重載的運(yùn)算符

        3 運(yùn)算符重載的規(guī)

        ①重載的運(yùn)算符有限制。②不能改變?cè)\(yùn)算符的優(yōu)先級(jí)、結(jié)合性、操作數(shù)的個(gè)數(shù)、語(yǔ)法結(jié)構(gòu)。③對(duì)已有的C++運(yùn)算符重載。④當(dāng)運(yùn)算符重載為類(lèi)的成員函數(shù)時(shí),函數(shù)的參數(shù)個(gè)數(shù)比原來(lái)的操作個(gè)數(shù)要少一個(gè)。原因是成員函數(shù)通過(guò)this指針隱式地訪問(wèn)類(lèi)對(duì)象的參數(shù);當(dāng)重載為類(lèi)的友元函數(shù)時(shí),參數(shù)個(gè)數(shù)與原操作數(shù)個(gè)數(shù)相同。⑤運(yùn)算符重載實(shí)質(zhì)上是函數(shù)重載,因此編譯程序按照函數(shù)重載的處理辦法對(duì)運(yùn)算符重載進(jìn)行處理。⑥舊類(lèi)型舊含義,新類(lèi)型新含義,新含義與舊含義功能相似。

        4 運(yùn)算符重載形式

        4.1 重載為類(lèi)的成員函數(shù) 如例1所示。程序中出現(xiàn)的表達(dá)式:x+y編譯程序?qū)⒔o解釋為:x.operator+(y),其中,x和y是Co類(lèi)的對(duì)象。operator+()是運(yùn)算+的重載函數(shù)。該運(yùn)算符重載函數(shù)僅有一個(gè)參數(shù)y??梢?jiàn),當(dāng)重載為成員函數(shù)時(shí),雙目運(yùn)算符僅有一個(gè)參數(shù)。對(duì)單目運(yùn)算符,重載為成員函數(shù)時(shí),不能再顯式說(shuō)明參數(shù)。重載為成員函數(shù)時(shí),總時(shí)隱含了一個(gè)參數(shù),該參數(shù)是this指針。this指針是指向調(diào)用該成員函數(shù)對(duì)象的指針。

        4.2 重載為友元函數(shù) 運(yùn)算符重載函數(shù)還可以為友元函數(shù)。當(dāng)重載友元函數(shù)時(shí),將沒(méi)有隱含的參數(shù)this指針。這樣,對(duì)雙目運(yùn)算符,友元函數(shù)有2個(gè)參數(shù),對(duì)單目運(yùn)算符,友元函數(shù)有一個(gè)參數(shù)。但是,有些運(yùn)行符不能重載為友元函數(shù),它們是:=,(),[]和->。

        重載為友元函數(shù)的運(yùn)算符重載函數(shù)的定義格式如下:

        對(duì)于雙目運(yùn)算符,重載為成員函數(shù)時(shí),僅一個(gè)參數(shù),另一個(gè)被隱含;重載為友元函數(shù)時(shí),有兩個(gè)參數(shù),沒(méi)有隱含參數(shù)。因此,程序中出現(xiàn)的x+y編譯程序解釋為:operator+(x,y)調(diào)用函數(shù)Co operator+(const coplex&c1,const Co&c2)進(jìn)行求值。

        5 重載輸出流運(yùn)算符<<

        例3 class Co//復(fù)數(shù)類(lèi)

        6 結(jié)語(yǔ)

        多態(tài)性是面向?qū)ο蟪绦蛟O(shè)計(jì)的重要支柱之一,而運(yùn)算符重載又是實(shí)現(xiàn)多態(tài)性的一個(gè)重要途徑。運(yùn)算符重載使得程序員把運(yùn)算符的使用擴(kuò)展到操作數(shù)是對(duì)象的情況,由運(yùn)算符構(gòu)成的表達(dá)式常常比函數(shù)調(diào)用更簡(jiǎn)潔易懂,熟練掌握運(yùn)算符重載,以提高C++編程能力。

        [1]錢(qián)能.C++程序設(shè)計(jì)教程[M].清華大學(xué)出版社,2006.

        [2]鄭莉.C++語(yǔ)言程序設(shè)計(jì)[M].清華大學(xué)出版社,2002.

        [3]楊俊清.C++程序設(shè)計(jì)[M].西安電子科技大學(xué)出版社,2003.

        猜你喜歡
        運(yùn)算符指針個(gè)數(shù)
        怎樣數(shù)出小正方體的個(gè)數(shù)
        老祖?zhèn)魇诨具\(yùn)算符
        等腰三角形個(gè)數(shù)探索
        怎樣數(shù)出小木塊的個(gè)數(shù)
        用手機(jī)插頭的思路學(xué)習(xí)布爾運(yùn)算符
        偷指針的人
        怎樣數(shù)出小正方體的個(gè)數(shù)
        為什么表的指針都按照順時(shí)針?lè)较蜣D(zhuǎn)動(dòng)
        基于改進(jìn)Hough變換和BP網(wǎng)絡(luò)的指針儀表識(shí)別
        ARM Cortex—MO/MO+單片機(jī)的指針變量替換方法
        国产精品国产三级国产剧情| 狠狠色狠狠色综合| 国内视频偷拍一区,二区,三区| 蜜桃在线观看视频在线观看| 精品国产亚洲级一区二区| 国产精品久线在线观看| 成全视频高清免费| 岛国视频在线无码| 草逼视频污的网站免费| 永久免费人禽av在线观看 | 久久老子午夜精品无码| 亚州中文字幕乱码中文字幕 | 欧美激情一区二区三区成人| 国产人妻精品一区二区三区不卡| 北岛玲中文字幕人妻系列| 草青青视频手机免费观看| 久久精品国产亚洲av果冻传媒| www国产亚洲精品久久网站| 日韩精品永久免费播放平台 | 激情人妻网址| 久久精品国产亚洲av成人文字| 伊人久久大香线蕉综合影院首页| 欧美日韩中文制服有码| 一个人的视频免费播放在线观看| av素人中文字幕在线观看| 永久免费看啪啪网址入口| 国产精品每日更新在线观看| 国产精品后入内射日本在线观看| 麻豆网神马久久人鬼片| 1000部精品久久久久久久久| 蜜桃一区二区免费视频观看| 45岁妇女草逼视频播放| 少妇无码太爽了不卡视频在线看| 国产在线不卡免费播放| 一区二区三区在线观看人妖| 乱码av麻豆丝袜熟女系列| 无码国产亚洲日韩国精品视频一区二区三区 | 国产亚洲av人片在线观看| 青青草免费激情自拍视频| 加勒比东京热中文字幕| 亚洲日本中文字幕天天更新|