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

            Qt中的new和delete

               Qt中,如果申明了兩個(gè)數(shù)組:

               QLabel        *label[8];
               QLabel        *sLabel[8];

               這兩個(gè)都是QLabel類型的指針數(shù)組,希望在以后的使用中動(dòng)態(tài)的分配其內(nèi)存;
               那么就應(yīng)該:
             
               在class MyLabel中...

               for(int i=0;i<8;i++)
               {
                   label[i] = new QLabel("This is a Label",this,0);
                   //申請(qǐng)空間.   
                   sLabel[i] = new QLabel("",label[i],0);
                   //第二個(gè)Label指針數(shù)組的父對(duì)象為上面申請(qǐng)過空間的Label.
               }

               QLabel的構(gòu)造函數(shù)的原形為:

               QLabel ( const QString & text, QWidget * parent, const char * name = 0, WFlags f = 0 )

               text:       Label上要顯示的字符串;
               parent:     Label的父對(duì)象的指針;
               name:       Label的名字;
               f:          Label的Flags;

               從上面的代碼容易得知label數(shù)組每個(gè)元素是以當(dāng)前MyLabel類對(duì)象為父對(duì)象的;而sLabel里的元素是以對(duì)應(yīng)的label為父對(duì)象的;


              在MyLabel的析構(gòu)函數(shù)中就有相應(yīng)的釋放空間的代碼:
             
              for(int i=0;i<8;i++)
              {
                   delete label[i];
                   //delete sLabel[i];
              }

              這里要是不注釋掉上面第3行的語句就會(huì)出現(xiàn)段錯(cuò)誤,原因經(jīng)過查找資料得知在Qt中如果在創(chuàng)建組件對(duì)象時(shí)設(shè)置了父對(duì)象時(shí),由父對(duì)象負(fù)責(zé)釋放其子對(duì)象的空間.所以上面第2行已經(jīng)釋放了label的空間,而其子對(duì)象的sLabel也隨之被釋放,所以如果第三行再進(jìn)行釋放就會(huì)出現(xiàn)之前所說的錯(cuò)誤.

              Qt雖然提供了這種機(jī)制,自動(dòng)回收部分的內(nèi)存,但是自己寫程序的時(shí)候還是要小心,不要造成內(nèi)存泄漏,這對(duì)于嵌入式的應(yīng)用來說更加是件重要的事.畢竟現(xiàn)在的嵌入式硬件還是內(nèi)存較小,而且要求程序可以長期穩(wěn)定,高效節(jié)能的運(yùn)行.

            posted on 2008-06-04 10:49 Wealth 閱讀(5992) 評(píng)論(0)  編輯 收藏 引用 所屬分類: Qt

            <2009年4月>
            2930311234
            567891011
            12131415161718
            19202122232425
            262728293012
            3456789

            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            留言簿

            隨筆分類(8)

            隨筆檔案(8)

            文章分類

            Around Web

            CoBlog

            Develop Usage Link

            搜索

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            国产精品99久久久久久猫咪 | 香蕉久久夜色精品国产2020| 久久中文精品无码中文字幕| 国产精品久久久福利| 久久精品国产AV一区二区三区| 久久久久人妻一区精品果冻| 色综合久久中文色婷婷| 久久国产精品久久精品国产| 大美女久久久久久j久久| 久久精品无码一区二区三区免费 | 国产一区二区三区久久| 成人久久久观看免费毛片| 久久久精品一区二区三区| 亚洲精品无码久久久| 久久精品国产亚洲av日韩| 久久久黄片| 久久99热只有频精品8| 久久免费看黄a级毛片| 久久久久久国产精品免费无码| 久久久精品久久久久久| 久久91精品国产91久久小草| 精品久久久久久亚洲精品| 日韩人妻无码一区二区三区久久| 久久AV无码精品人妻糸列| 日本欧美久久久久免费播放网| 久久久久久亚洲Av无码精品专口| 伊人久久大香线蕉精品不卡| 午夜欧美精品久久久久久久| 亚洲午夜精品久久久久久浪潮| 国内精品久久久久影院薰衣草| 久久99精品久久久久久9蜜桃| 亚洲一区精品伊人久久伊人| 国产成人AV综合久久| 国产成人久久精品麻豆一区 | 一本久久a久久精品综合夜夜| 99久久精品午夜一区二区 | 国产呻吟久久久久久久92| 久久影院久久香蕉国产线看观看| 久久久久亚洲精品天堂| 亚洲精品高清一二区久久| 久久久久久久99精品免费观看|