• <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++博客 ::  :: 新隨筆 :: 聯(lián)系 ::  :: 管理 ::
              55 隨筆 :: 4 文章 :: 202 評論 :: 0 Trackbacks
            現(xiàn)在在學(xué)習(xí)QT界面開發(fā),在windows環(huán)境下裝了vc6和QT3.3.4版本的開發(fā)包,裝好之后就可以在VC集成開發(fā)環(huán)境下產(chǎn)生一個(gè)工具欄進(jìn)行QT開發(fā)了。在學(xué)習(xí)書上例子的時(shí)候,總是有些代碼中要使用到Q_OBJECT宏,這樣才可以使用自定義的signal還有slot了,不過試了好多次都編譯不成功,好像是需要什么moc編譯,真是暈,書上也沒有說這個(gè),那些自帶的例子都是可以編譯的,直接用工具欄上面的那個(gè)moc也不管用,要是你知道你就告訴我下怎么用。

            查了下資料,moc就是元對象編程。

            元對象編譯器讀取一個(gè)C++源文件。如果它發(fā)現(xiàn)其中的一個(gè)或多個(gè)類的聲明中含有Q_OBJECT宏,它就會(huì)給這個(gè)使用Q_OBJECT宏的類生成另外一個(gè)包含元對象代碼的C++源文件。尤其是,元對象代碼對信號(hào)/槽機(jī)制、運(yùn)行時(shí)類型信息和動(dòng)態(tài)屬性系統(tǒng)是需要的。
            一個(gè)被元對象編譯器生成的C++源文件必須和這個(gè)類的實(shí)現(xiàn)一起被編譯和連接(或者它被包含到(#include)這個(gè)類的源文件中)。
            如果你是用qmake來生成你的Makefile文件,當(dāng)需要的時(shí)候,編譯規(guī)則中需要包含調(diào)用元對象編譯器,所以你不需要直接使用元對象編譯器。

            這里提供一種方法:類的聲明放在一個(gè)頭文件(.h文件)中
            如果在上述的文件myclass.h中發(fā)現(xiàn)類的聲明,元對象編譯器的輸出文件將會(huì)被放在一個(gè)叫moc_myclass.cpp的文件中。這個(gè)文件將會(huì)像通常情況一樣被編譯,作為對象文件的結(jié)果是moc_myclass.o(在Unix下)或者moc_myclass.obj(在Windows下)。這個(gè)對象接著將會(huì)被包含到一個(gè)對象文件列表中,它們將會(huì)在程序的最后連編階段被連接在一起。

            然后在
            (1)在FileView視圖中 右鍵點(diǎn)擊需要產(chǎn)生MOC文件的頭文件(就是類中包含Q_OBJECT宏,如果沒有這個(gè)宏就不需要產(chǎn)生MOC文件)

            (2)在右鍵菜單中選擇Setting...

            (3)選擇Custom Build,在Commands欄中輸入:
            %QTDIR%\bin\moc.exe $(InputDir)\$(InputName).h -o $(InputDir)\moc_$(InputName).cpp

            Outputs中輸入:
            $(InputDir)\moc_$(InputName).cpp

            (4)然后右鍵這個(gè)頭文件編譯


            (5)最后生成一個(gè) moc編譯產(chǎn)生的cpp源文件


            這樣編譯時(shí)就會(huì)在當(dāng)前工程目錄中自動(dòng)生成MOC文件了

            本文參考 qt文檔以及http://www.qobject.com/read.php?fid=46&tid=2296&toread=1 的文章。

            謝謝!



            posted on 2007-08-13 21:32 北風(fēng)之神007 閱讀(3485) 評論(0)  編輯 收藏 引用 所屬分類: QT
            综合久久久久久中文字幕亚洲国产国产综合一区首| 久久中文字幕无码专区| AA级片免费看视频久久| 91精品婷婷国产综合久久| 久久精品一区二区三区中文字幕| 伊人久久成人成综合网222| 久久婷婷五月综合成人D啪| 亚洲AV日韩AV天堂久久| 国产精品99久久久久久董美香| 久久久久久A亚洲欧洲AV冫| 伊人久久久AV老熟妇色| 欧美一级久久久久久久大| 久久精品国产精品青草app| 无码任你躁久久久久久老妇| 精品久久久无码人妻中文字幕| 97久久精品午夜一区二区| 亚洲国产另类久久久精品| 久久久久久久综合日本亚洲| 久久精品国产第一区二区三区| 一日本道伊人久久综合影| 欧美综合天天夜夜久久| 久久亚洲中文字幕精品一区| 一个色综合久久| 精品久久人人爽天天玩人人妻| 日韩精品久久久久久| 亚洲狠狠婷婷综合久久久久 | 久久久噜噜噜久久中文福利| 久久久久亚洲爆乳少妇无 | 久久AⅤ人妻少妇嫩草影院| 色欲av伊人久久大香线蕉影院| 精品久久久无码中文字幕 | 久久精品一区二区三区中文字幕| 国产V综合V亚洲欧美久久| 国产精品久久久久aaaa| 中文字幕乱码人妻无码久久| 日日狠狠久久偷偷色综合免费 | 免费久久人人爽人人爽av| 少妇久久久久久被弄到高潮| 久久久91人妻无码精品蜜桃HD| 国产午夜精品理论片久久| 久久久久久极精品久久久|