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

            C++編程失樂園

            致力于解決論壇的不足,探討C++的原理

            C++下面的構造拷貝函數和賦值函數

            首先我給出一個類
            class A
            {
            public:
            ???char *p;
            ???int nlen;
            ?? A();
            ?? A(const char *p1)
            ???{
            ????? nlen = strlen(p1);
            ??????p = new char[nlen+1];
            ??????strcpy(p,p1);
            ???}
            };
            void main()
            {
            ???A a("Hello world");
            ?? A b = a;
            }
            如果沒有構造拷貝函數的話,
            這樣明顯會出現2個問題,
            1.a.p和b.p指向同一個內存區域
            //2.a.p資源沒有釋放
            3.a和b調用了默認析構函數的話,同一個資源被釋放了2次.
            這就是沒有構造拷貝函數的缺陷
            在class A中加入
            /*-----------------------------add?method ------------*/
            A(const A & a1)
            {
            ???nlen = strlen(a1.p);
            ???p?= new char[nlen+1];
            ? strcpy(p,p1);
            }
            /*------------------------------end add ---------------*/
            這樣就加入了構造拷貝函數
            明顯上面的問題可以解決,
            我們可以寫更美觀一點的代碼
            void main()
            {
            ???A a("Hello World");
            ???A b(a);
            ???cout <<"debug breakpoint is setted here"<<endl;
            }

            posted on 2006-12-25 10:57 木木頭 閱讀(256) 評論(0)  編輯 收藏 引用

            導航

            <2025年7月>
            293012345
            6789101112
            13141516171819
            20212223242526
            272829303112
            3456789

            統計

            常用鏈接

            留言簿(3)

            隨筆分類(29)

            搜索

            最新隨筆

            最新評論

            色婷婷综合久久久久中文字幕| 国产一级做a爰片久久毛片| 亚洲精品国产成人99久久| 国产成人久久久精品二区三区| 久久精品无码专区免费| 久久精品国产男包| 久久久久久久久久久| 香蕉久久夜色精品国产小说| 亚洲一区精品伊人久久伊人| 69国产成人综合久久精品| 久久久久久国产精品无码下载| 久久久无码精品亚洲日韩蜜臀浪潮| 97久久超碰成人精品网站| 久久久久97国产精华液好用吗| 欧美黑人又粗又大久久久| 久久国产午夜精品一区二区三区| 伊人久久大香线焦AV综合影院 | 久久综合九色欧美综合狠狠| 亚洲精品无码久久久久去q| 伊人久久精品线影院| 欧洲精品久久久av无码电影| 久久夜色撩人精品国产| 久久美女网站免费| 久久精品中文无码资源站| 久久精品视频一| 亚洲国产精品无码久久青草| 天天爽天天爽天天片a久久网| 精品久久亚洲中文无码| 青青热久久国产久精品 | 亚洲日本va午夜中文字幕久久| 国产午夜精品久久久久免费视 | 久久久久久免费一区二区三区 | 精品国产日韩久久亚洲| 久久精品国产一区二区三区| 精品久久久久久亚洲| 日产精品99久久久久久| 日韩人妻无码精品久久免费一| 亚洲国产美女精品久久久久∴| 午夜精品久久久久成人| 99久久免费国产精品特黄| 最新久久免费视频|