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

            兔子的技術博客

            兔子

               :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
              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 會飛的兔子 閱讀(707) 評論(0)  編輯 收藏 引用 所屬分類: C++及開發(fā)環(huán)境
            色婷婷狠狠久久综合五月| 婷婷综合久久狠狠色99h| 国内精品欧美久久精品| 色婷婷狠狠久久综合五月| 欧美亚洲国产精品久久| 国产成人久久AV免费| 久久精品免费网站网| 午夜不卡久久精品无码免费| 99久久成人国产精品免费 | 久久人搡人人玩人妻精品首页| 伊人色综合久久天天人守人婷| 久久婷婷五月综合色高清| 99久久婷婷国产一区二区| 色老头网站久久网| 成人国内精品久久久久影院VR| 97精品伊人久久大香线蕉| 国产精品热久久无码av| 97久久精品人妻人人搡人人玩| 久久久久亚洲AV综合波多野结衣| 久久久久久人妻无码| 久久精品一区二区三区AV| 久久综合一区二区无码| 国产视频久久| 97精品伊人久久久大香线蕉| 99久久久国产精品免费无卡顿| 偷窥少妇久久久久久久久| 久久性精品| 中文字幕精品久久久久人妻| 狠狠精品干练久久久无码中文字幕| 久久99国产精品尤物| 日本欧美久久久久免费播放网| 精品综合久久久久久97| 无码任你躁久久久久久老妇App| 久久露脸国产精品| 亚洲国产成人久久一区久久 | www性久久久com| 久久国产亚洲高清观看| 久久久国产精品亚洲一区| 久久婷婷激情综合色综合俺也去| 亚洲欧美伊人久久综合一区二区| 婷婷伊人久久大香线蕉AV|