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

            woaidongmao

            文章均收錄自他人博客,但不喜標(biāo)題前加-[轉(zhuǎn)貼],因其丑陋,見諒!~
            隨筆 - 1469, 文章 - 0, 評論 - 661, 引用 - 0
            數(shù)據(jù)加載中……

            C++ Type traits的簡單用法

            昨天研究了C++ type traits,我們在使用C++的模板的時候,有時我們需要確定模板中的T究竟是什么類型的,這時候我們就要用到type traits.

            比如我們定義一個比較大小的函數(shù):

            template < typename T > less(const T & a, const T & b);

            我們需要在Tint,double,string時設(shè)計不同的算法,一種可以選擇的方案就是函數(shù)重載。不過我們也可以用type traits的方法來確定T是什么類型的。這個需要用到template的偏特化。

            比如我們設(shè)計一個判斷一個類是不是 int 型的類,如下

            template < typename T > class is_int { static const bool value = false};

            表示默認(rèn)所有的類都不是int型的,然后我們對int型偏特化,如下

            template <> class is_int {static const bool value = true;};

            這樣,對于任意給定的類T,我們都可以用 is_int<T>::value 來判斷他是不是整型的。

            這種方法相對于函數(shù)重載的好處是,他是編譯時就可以判斷好的,而重載是在運(yùn)行時才判斷的,這種方法可以節(jié)約一點(diǎn)微不足道的時間,嘿嘿!

             

            posted on 2008-11-08 22:50 肥仔 閱讀(2965) 評論(3)  編輯 收藏 引用 所屬分類: C++ 模板

            評論

            # re: C++ Type traits的簡單用法  回復(fù)  更多評論   

            重載是在編譯時刻判斷的,而不是運(yùn)行時刻判斷,多態(tài)才是運(yùn)行時刻判斷的
            2009-03-13 10:07 | www

            # re: C++ Type traits的簡單用法  回復(fù)  更多評論   

            template <> class is_int {static const bool value = true;};這是特化不是偏特化。關(guān)于traits你才開個頭,繼續(xù)
            2010-01-17 20:20 | luren

            # re: C++ Type traits的簡單用法[未登錄]  回復(fù)  更多評論   

            那兩行代碼中唯一出現(xiàn)的類型是和int沒有必然聯(lián)系的bool,所以理論上不可能會對int有必然關(guān)系。事實上lz應(yīng)該寫錯或者抄錯了。第二句應(yīng)該是這樣:
            template <> class is_int<int> {static const bool value = true;};
            這才是偏特化/partial specialization的正確語法,主義尖括號內(nèi)的int。
            2011-04-16 02:24 | Alex
            亚洲午夜久久久久妓女影院| 久久久久亚洲AV无码网站| 国产综合精品久久亚洲| 人妻丰满?V无码久久不卡| 伊人久久大香线蕉av一区| 久久精品国产只有精品2020| 久久婷婷是五月综合色狠狠| 国产精品国色综合久久| 亚洲欧洲久久av| 久久精品国产精品国产精品污 | 久久久久久午夜成人影院 | 亚洲精品乱码久久久久久久久久久久 | 精品久久久久香蕉网| 国产精品一区二区久久精品无码| 无码乱码观看精品久久| 国产精品青草久久久久婷婷| 久久亚洲AV无码精品色午夜麻豆 | 国产精品亚洲综合久久| 一本久久久久久久| 一本久道久久综合狠狠爱| 久久综合狠狠综合久久激情 | 国内精品伊人久久久久777| 国产午夜精品久久久久九九| 久久国产精品成人影院| 久久无码中文字幕东京热| 国产精品内射久久久久欢欢| MM131亚洲国产美女久久| 久久久www免费人成精品| 久久久久这里只有精品| 99久久国产主播综合精品| 久久九九亚洲精品| 久久久精品一区二区三区| 无码久久精品国产亚洲Av影片 | 国产精品一区二区久久不卡| 一本久道久久综合狠狠躁AV| 久久精品国产精品亚洲下载| 99久久综合狠狠综合久久| 国产激情久久久久影院老熟女| 久久国产精品久久国产精品| 成人国内精品久久久久一区| 精品国产乱码久久久久久郑州公司|