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

            兔子的技術博客

            兔子

               :: 首頁 :: 聯系 :: 聚合  :: 管理
              202 Posts :: 0 Stories :: 43 Comments :: 0 Trackbacks

            留言簿(10)

            最新評論

            閱讀排行榜

            評論排行榜

            這應該是模板元編程里的概念吧,有時候我們確實需要獲取成員變量的類型,這里提供一個方法借助模板的偏特化達到目的:

            1. templatetypename P>  
            2. struct MemberType;  
            3. templatetypename F, typename T >  
            4. struct MemberType< F T::* >  
            5. {  
            6.     typedef F member_type;   
            7.     typedef T class_type;  
            8. };  
             

             

            假設我們有個結構定義如下:

             

            1. struct Call  
            2. {         
            3.     int         ID;  
            4.     std::string     Key;  
            5. };  
             

             

            通過 MemberType< decltype( &Call::ID ) >::member_type 就可以獲得是變量 ID 的類型(int)了。

            注:如果你的編譯器不支持 decltype, 可以使用 boost 庫里的 BOOST_TYPEOF 代替。


            轉自:http://blog.csdn.net/jadedrip/article/details/5583300
            posted on 2011-08-04 13:55 會飛的兔子 閱讀(714) 評論(0)  編輯 收藏 引用 所屬分類: C++及開發環境
            久久精品免费观看| 久久久久亚洲Av无码专| 伊色综合久久之综合久久| 久久强奷乱码老熟女网站| 久久国产精品久久国产精品| 国产精品亚洲综合久久| 91超碰碰碰碰久久久久久综合| 伊人久久精品影院| 久久久久久免费一区二区三区 | 久久只有这精品99| 嫩草影院久久国产精品| 亚洲精品乱码久久久久久蜜桃不卡 | 精品永久久福利一区二区| 国产精品丝袜久久久久久不卡| 无码八A片人妻少妇久久| 7国产欧美日韩综合天堂中文久久久久| 日本精品久久久久影院日本| 青青热久久综合网伊人| 久久精品国产亚洲AV无码麻豆| 久久精品免费全国观看国产| 久久精品国产99久久香蕉| 国产高潮国产高潮久久久| 亚洲国产精品无码久久一线| 亚洲?V乱码久久精品蜜桃| 久久综合九色欧美综合狠狠| 久久久久久噜噜精品免费直播| 999久久久免费精品国产| 久久亚洲私人国产精品vA| 精品综合久久久久久98| 伊人久久大香线蕉综合网站| 伊人久久大香线蕉精品不卡| 无码乱码观看精品久久| 免费一级欧美大片久久网| 久久久久久A亚洲欧洲AV冫 | 四虎国产永久免费久久| 久久精品中文字幕久久| 国产精品美女久久久久AV福利 | 久久久久亚洲AV成人网人人网站 | 欧洲性大片xxxxx久久久| 久久久久久国产精品免费免费| 久久国产精品偷99|