• <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>

            關(guān)于資源和操作符重載疑問(wèn)

            Posted on 2006-04-21 22:41 Harry 閱讀(561) 評(píng)論(3)  編輯 收藏 引用 所屬分類: C++

            我定義了一個(gè)類,定義如下:

            ?

            class ?SimpleClass
            {
            ??
            public :
            ????SimpleClass(
            int ?value = 0 );
            ????SimpleClass
            & ? operator + ( const ?SimpleClass & ?right)? const ;
            ????
            void ? operator = ( const ?Simple & ?right);

            ????
            int ?m_iValue;
            }


            SimpleClass
            & ?SimpleClass:: operator + ( const ?SimpleClass & ?right) const
            {
            ??SimpleClass
            * ?scPlusResult = new ?SimpleClass();
            ??scPlusResult
            -> m_iValue = m_iValue + right.m_iValue;

            ??
            return ? * scPlusResult;?
            }


            void ?SimpleClass:: operator = ( const ?SimpleClass & ?right)
            {
            ??m_iValue
            = right.m_iValue;
            }


            int ?mian()
            {
            ??SimpleClass?sc1
            = new ?SimpleClass( 1 );
            ??SimpleClass?sc2
            = new ?SimpleClass( 2 );
            ??SimpleClass?sc3
            = new ?SimpleClass();

            ??sc3
            = sc1 + sc2;

            ??delete?sc1;
            ??delete?sc2;
            ??delete?sc3;

            ??
            return ? 0 ;
            }



            ///////////////////////////////////////////////////////////////////////////

            提問(wèn):
            1。符號(hào)+的重載里scPlusResult的資源在最后釋放掉了嗎?如果沒(méi)有,要怎么實(shí)現(xiàn)?
            2。對(duì)于符號(hào)+的重載還有其他的實(shí)現(xiàn)方法嗎?

            熱烈歡迎大家討論!!!!

            Feedback

            # re: 關(guān)于資源和操作符重載疑問(wèn)  回復(fù)  更多評(píng)論   

            2006-04-22 00:38 by 芋頭
            +操作符返回一個(gè)臨時(shí)對(duì)象,不要去new,返回類型不是引用類型,剩下的就好寫(xiě)了。

            # re: 關(guān)于資源和操作符重載疑問(wèn)  回復(fù)  更多評(píng)論   

            2006-04-22 00:56 by 芋頭
            =操作符一般還要返回該對(duì)象的引用。+操作符最好寫(xiě)成全局的,不要作為成員函數(shù),好處下面解釋。另外代碼似乎充滿了C#或JAVA代碼風(fēng)格,錯(cuò)誤很多,還是先搞清C++語(yǔ)法再做吧,每種語(yǔ)言都有它的特色。我簡(jiǎn)單整理了一下:
            class SimpleClass
            {
            friend SimpleClass operator + (const SimpleClass& lhs, const SimpleClass& rhs);
            public :
            SimpleClass(int value = 0);
            SimpleClass& operator = (const SimpleClass& right);

            int m_iValue;
            } ;

            SimpleClass::SimpleClass(int value)
            :m_iValue(value)
            {
            }

            SimpleClass& SimpleClass::operator = (const SimpleClass& right)
            {
            m_iValue = right.m_iValue;
            return *this;
            }

            SimpleClass operator + (const SimpleClass& lhs, const SimpleClass& rhs)
            {
            return SimpleClass(lhs.m_iValue + rhs.m_iValue);
            }

            int main()
            {
            SimpleClass sc1( 1 );
            SimpleClass sc2( 2 );
            SimpleClass sc3;

            sc3 = sc1 + sc2;
            sc3 = sc1 + 1;
            sc3 = 1 + sc1;

            return 0 ;
            }
            上面所說(shuō)的好處就是,sc3 = sc1 + 1; 和sc3 = 1 + sc1這2個(gè)都可以成立了,如果寫(xiě)成成員函數(shù),則后一個(gè)不能編譯。

            # re: 關(guān)于資源和操作符重載疑問(wèn)  回復(fù)  更多評(píng)論   

            2006-04-23 20:41 by Harry
            多謝大哥了,呵呵

            這段代碼是隨手寫(xiě)的,也沒(méi)仔細(xì)校驗(yàn)了。要不斷學(xué)習(xí)啊!呵呵

            posts - 6, comments - 3, trackbacks - 0, articles - 1

            Copyright © Harry

            少妇久久久久久久久久| 久久国产一片免费观看| 久久99热这里只频精品6| 久久精品视频免费| 思思久久99热免费精品6| 久久精品国产清高在天天线| 丁香五月网久久综合| 精品国产婷婷久久久| 亚洲午夜精品久久久久久app| 亚洲人成无码久久电影网站| 久久精品aⅴ无码中文字字幕不卡| 久久综合视频网| 久久亚洲欧美日本精品| 亚洲AV无码1区2区久久| 亚洲国产视频久久| 99久久伊人精品综合观看| 久久99久国产麻精品66| 香蕉久久永久视频| 久久精品国产色蜜蜜麻豆| 久久精品无码免费不卡| 久久天天躁狠狠躁夜夜av浪潮| 久久99国产精品久久99果冻传媒| 久久WWW免费人成一看片| 亚洲精品乱码久久久久久按摩| 久久久久久精品无码人妻| 色狠狠久久综合网| 久久国产精品77777| 99久久免费国产精品| 一本综合久久国产二区| 色欲综合久久躁天天躁蜜桃| 精品久久人妻av中文字幕| 国产成人综合久久久久久| 久久国产视频网| 久久国产亚洲高清观看| 青青久久精品国产免费看| 婷婷久久五月天| 久久精品国产99国产电影网| 一本色道久久88精品综合| 久久免费大片| 久久久久久国产精品美女| 亚洲va久久久噜噜噜久久男同 |