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

            xyjzsh

            c++構(gòu)造函數(shù)間的調(diào)用

             

            #include <stdio.h>

            class CTest
            {
            public:
               CTest() 
            {
                 CTest(
            0);
                
            //已經(jīng)調(diào)用析構(gòu)函數(shù)
                 printf("CTest()\r\n");
               }

            CTest(
            int i) {
                 CTest(i, 
            0);
                
            //已經(jīng)調(diào)用析構(gòu)函數(shù)
                 printf("CTest(%d)\r\n", i);
            }

            CTest(
            int i, int j) {
                   printf(
            "CTest(%d, %d)\r\n", i, j);
            }

            virtual ~CTest(){
                  m_CTestCount
            ++;
                  printf(
            " ~CTest() m_CTestCount = %d\r\n", m_CTestCount);
            }

            static int m_CTestCount;
            }
            ;
            int CTest::m_CTestCount = 0;
            int main()
            {
            CTest cT;
            printf(
            "main()\r\n");
            //調(diào)用析構(gòu)函數(shù)
            return 0;
            }
            調(diào)用CTest()時會產(chǎn)生一個臨時變量。
            如果想在構(gòu)造函數(shù)間調(diào)用要用一下形式:
            class CTest2
            {
            public:
                CTest2()
                
            {
                    a
            =0;
                    b
            =0;
                }

                CTest2(
            int _a)
                
            {
                    
            this->CTest2::CTest2();
                    a 
            = _a;
                    printf(
            "in CTest2(int a) and a=%d,b=%d\n",a,b);
                }

                
            ~CTest2()
                
            {
                    printf(
            "in destrcutor and c=%d\n",c);
                }

                
            int a;
                
            int b;
                
            int static c;
            }
            ;
            注意 this->CTest2::CTest();
            建議:
            因為構(gòu)造函數(shù)的特別,我們應(yīng)該盡量避免構(gòu)造函數(shù)間的調(diào)用
            可以采用狗仔函數(shù)默認值的方式
            以上為例:
            CTest2(int _a=0,int_b=0);
            這樣就可以省去CTest2()這個默認構(gòu)造函數(shù)。

            posted on 2010-10-29 17:11 呆人 閱讀(301) 評論(0)  編輯 收藏 引用

            <2010年11月>
            31123456
            78910111213
            14151617181920
            21222324252627
            2829301234
            567891011

            導航

            統(tǒng)計

            常用鏈接

            留言簿(1)

            隨筆分類

            隨筆檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            97精品久久天干天天天按摩| 久久午夜夜伦鲁鲁片免费无码影视| 91亚洲国产成人久久精品| 亚洲精品tv久久久久久久久| 久久夜色精品国产噜噜亚洲AV| 人妻无码αv中文字幕久久琪琪布| 久久这里只精品99re66| 日韩人妻无码精品久久免费一| 久久综合精品国产二区无码| 九九久久99综合一区二区| 国产精品VIDEOSSEX久久发布| 亚洲欧洲精品成人久久奇米网| 狠狠精品久久久无码中文字幕 | 国产69精品久久久久久人妻精品| 国产精品久久婷婷六月丁香| 国产精品久久永久免费| 久久人人爽人人爽AV片| 久久久青草久久久青草| 无码伊人66久久大杳蕉网站谷歌| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 久久久SS麻豆欧美国产日韩| 久久777国产线看观看精品| 欧洲精品久久久av无码电影 | 久久中文字幕精品| 久久国产精品偷99| 亚洲午夜福利精品久久| 无夜精品久久久久久| 亚洲va久久久噜噜噜久久天堂| 久久久噜噜噜久久中文字幕色伊伊 | 久久av高潮av无码av喷吹| 精品久久久久久综合日本| 成人久久综合网| 久久久WWW成人| 人妻无码久久一区二区三区免费 | 91精品久久久久久无码| 久久国产V一级毛多内射| 亚洲精品无码久久久| 久久99精品综合国产首页| 日韩久久久久中文字幕人妻| 亚洲AV日韩精品久久久久久| 久久综合久久伊人|