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

            搜索

            最新隨筆

            最新評論

            久久午夜综合久久| 久久精品国产精品青草| 亚洲精品无码专区久久同性男| 国产成人无码精品久久久久免费| 麻豆久久| 国产精品九九久久免费视频 | 97精品伊人久久大香线蕉| 99久久精品免费看国产一区二区三区| 久久亚洲精品成人AV| 久久精品二区| 国产精品免费看久久久| 伊人久久大香线蕉综合热线| 久久综合久久综合久久综合| 欧美久久久久久| 精品久久久久久无码国产| 久久久久久午夜成人影院| 久久久久国产一区二区| 久久w5ww成w人免费| 精品综合久久久久久97| 日韩欧美亚洲国产精品字幕久久久| 国产婷婷成人久久Av免费高清| 久久久久久久免费视频| 久久国产精品偷99| 精品久久久久中文字幕一区| 亚洲人成网亚洲欧洲无码久久| 久久国产美女免费观看精品 | 久久精品国产影库免费看 | 久久大香萑太香蕉av| 久久精品亚洲精品国产欧美| 久久九九有精品国产23百花影院| 久久国产精品成人片免费| 亚洲精品乱码久久久久久蜜桃不卡 | 亚洲一区二区三区日本久久九| 久久精品国产99久久久| 精品多毛少妇人妻AV免费久久| 久久久青草青青国产亚洲免观| 国内精品伊人久久久久网站| 久久久精品日本一区二区三区| 久久黄色视频| 99久久国产亚洲综合精品| 久久久久久精品久久久久|