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

            zhonghua

            C++博客 首頁 新隨筆 聯(lián)系 聚合 管理
              72 Posts :: 1 Stories :: 4 Comments :: 0 Trackbacks

            因為 Q_DECLARE_METATYPE 是一個宏。借用一句話:“宏是萬惡之源”。什么惡呢?就是,如果它的參數(shù)當中有逗號",",會被當成參數(shù)分隔符。


            所以,當你試圖這么寫:

            1. Q_DECLARE_METATYPE(QMap<QString, bool>);  

            你就會發(fā)現(xiàn)編譯不過,并且抓狂了。


            解決方法嘛,當然很簡單:參照Q_DECLARE_METATYPE的宏定義,自己把它展開,編譯器就不會再犯傻了。


            1. QT_BEGIN_NAMESPACE  
            2. template <>  
            3. struct QMetaTypeId< QMap<QString, bool> >  
            4. {  
            5.     enum { Defined = 1 };  
            6.     static int qt_metatype_id()  
            7.     {  
            8.         static QBasicAtomicInt metatype_id = Q_BASIC_ATOMIC_INITIALIZER(0);  
            9.         if (!metatype_id)  
            10.             metatype_id = qRegisterMetaType< QMap<QString, bool> >("QMap<QString, bool>",  
            11.                 reinterpret_cast< QMap<QString, bool> *>(quintptr(-1)));  
            12.         return metatype_id;  
            13.     }  
            14. };  
            15. QT_END_NAMESPACE 
            posted on 2012-03-30 13:13 米米 閱讀(1403) 評論(0)  編輯 收藏 引用 所屬分類: qt
            久久久久久久女国产乱让韩| 久久久久久国产a免费观看不卡| 亚洲国产成人乱码精品女人久久久不卡 | 久久亚洲AV成人无码| 色狠狠久久AV五月综合| 狠色狠色狠狠色综合久久| 久久人人爽人人爽AV片| 人妻少妇久久中文字幕| 久久毛片免费看一区二区三区| 99久久99久久精品国产片果冻| 国産精品久久久久久久| 人妻久久久一区二区三区| 久久精品国产WWW456C0M| 久久婷婷五月综合色高清| 久久免费99精品国产自在现线| 久久国产精品无码HDAV | 国产精品午夜久久| 亚洲色欲久久久综合网| 久久亚洲av无码精品浪潮| 久久本道伊人久久| 久久精品国产亚洲av麻豆小说| 无码8090精品久久一区| 久久国产影院| 亚洲午夜久久久精品影院| 国产综合久久久久久鬼色| 青草国产精品久久久久久| 伊人久久综合无码成人网 | 久久影院久久香蕉国产线看观看| 精品熟女少妇av免费久久| 亚洲va国产va天堂va久久| 2021国内久久精品| 伊人久久亚洲综合影院| 无码人妻久久一区二区三区蜜桃| 激情五月综合综合久久69| 精品久久人人做人人爽综合| 久久黄色视频| 久久久久亚洲AV成人网人人网站| 久久精品亚洲福利| 久久国产精品二国产精品| 日本精品久久久中文字幕| 国产三级久久久精品麻豆三级 |