青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Windreamer Is Not a DREAMER
main(){main(puts("Hello,stranger!"));}

終于無聊到來寫書評,最近的項目一直都沒和C++有什么關系,不過看的書卻都是C++方面的,而最近看到的幾本書中感覺最好的莫過于這本《C++ Templates》

Nicolai M. Josuttis的書我很喜歡,從他的那本《The C++ Standard Template Library》就看出了他很多獨特的風格,令我愛不釋手,所以這本《C++ Template》   也進入了我的必看書單。粗讀之后,感覺整本書絕對將成為C++泛型領域的圣經級著作

  1. 這本書角度選得很好,全書分三個部分,分別介紹模板基礎、模版的編譯器實現、模板的高級技巧,三個部分相輔相成、相互照應,由淺入深而又自然而然,還方便分開閱讀(比如我就重點看了第一第三部分,模版實現被我略過了)卻又全面覆蓋了這一領域
  2. 這本書英文很淺顯(比《Modern C++ Design》淺顯了不知多少倍),語言嚴謹而又不晦澀,尤其要贊的就是廢話尤其地少!
  3. 章節安排很合理,很方別作為工具書應急查閱(《C++STL》就有這個優點,與這本書科學家+工程師的組合不無關系)
  4. 書中好多技術,我是聞所未聞,驚為天人,尤其第三部分,可以算得上眼花繚亂,而且給出的實現感覺既符合標準、實用、而且沒有炫技的成分

同類書籍據我所知沒有可以達到這個高度的,大部分C++泛型方面的專著只局限于怎么用STL,將模板基礎的書,也僅限于最表面的語法,像模版參數推導這種問題鮮有涉及,更不用提關于Metaprogramming,這本書圣經的地位估計后人也是難以企及了。

下面是我看書時畫下來的一些覺得自己平時應該注意的地方,放在這里做備忘好了

  1. (P12) [Argument Deducion] If we pass two ints to the parameter type T const&  the C++ compiler must conclude that T must be int. Note that no automatic type conversion is allowed here,Each T must match exactly.

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

    max(
    4,7)//OK:T is int for both arguments
    max(4,4.2)//ERROR:first T is int,second T is double

  2. (P13)[Template Parameters] In function templates(unlike class template) no default template arguments can be specified
  3. (P14)[Template Parameters]Deducation can be seen as part of  overlaod resolution-a process tha is not based on selection of return type either.The sole exception is the return type of conversion operator members.
  4. (P18)[Overloading Function Template] The fact that not all overloaded functions are visible when a corresponding function call is made may or may not matter.
  5. (P39)[Nontype Function Template Parameters] Function templates are considered to name a set of overloaded function.However,according to the current standard,sets of overload functions cannot be used for template parameter deducation.Thus you have to cast to the exactly type of the function template arguments

    template <typename T,int VAL>
    T addValue (T 
    const& x)
    {
        
    return x+VAL
    }


    std::transform(source.begin(),source.end(),
    //start and end of source
    dest.begin(),//start of destination
    (int(*)(int  const&))addValue<int,5>);//operation

  6. (P40)[Restrictions for Nontype Template Parameters] 太長了,略過
  7. (P44)[The .template Construct]

    template <int N>
    void printBitset (std::bitset<N> const& bs)
    {
        std::cout
    <<bs.to_string<char,char_traits<char>,allacator<char> >();//ERROR:can't recogonize the template
    }


    template 
    <int N>
    void printBitset (std::bitset<N> const& bs)
    {
        std::cout
    <<bs.template to_string<char,char_traits<char>,allacator<char> >();//OK
    }

  8. (P45)[Using this->]

    template <typename T>
    class Base
    {
    public:
        
    void bar();
    }
    ;

    template 
    <typename T>
    class Derived : Base<T>
    {
    public:
        
    void foo()
        
    {
            bar();
    //call external bar() or error
        }

    }


    template 
    <typename T>
    class Derived : Base<T>
    {
    public:
        
    void foo()
        
    {
            
    this->bar();//OK
        }

    }

  9. 同樣精彩的還有(P57)[Using String Literals as Arguments for Function Templates]
  10. 令我驚異的SFINE技術(substitution-failure-is-not-an-error)

    template <typename T>
    class IsClassT
    {
    private:
        typedef 
    char One;
        typedef 
    struct {char a[2];} Two;
        template 
    <typename C> static One test (int::C*);
        template 
    <typename C> static Two test();
    public:
        
    enum {Yes=sizeof(IsClassT<T>::test<T>(0))==1};
        
    enum {No=!Yes};
    }
    ;

總而言之,此書帶給了我前所未有的閱讀享受......我今年震撼大獎一定會投它一票
posted on 2005-12-10 12:36 Windreamer Is Not DREAMER 閱讀(640) 評論(3)  編輯 收藏 引用 所屬分類: Generic
Comments
 
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美日韩一区视频| 亚洲欧美在线免费| 亚洲欧洲精品一区二区精品久久久 | 欧美国产三区| 亚洲国产国产亚洲一二三| 欧美高清在线观看| av成人免费在线| 亚洲欧美日韩中文视频| 久久国产黑丝| 欧美日韩第一区| 国产精品一区二区久久久久| 国产亚洲欧洲一区高清在线观看 | 国产精品视频免费在线观看| 国产视频丨精品|在线观看| 91久久久久久| 亚洲午夜精品福利| 久久九九国产精品怡红院| 欧美大片免费久久精品三p | 亚洲欧美日韩一区二区三区在线观看| 亚洲欧美日韩视频一区| 你懂的一区二区| 国产精品久久久| 亚洲国产色一区| 欧美一区午夜精品| 亚洲精品视频在线看| 欧美影院成年免费版| 欧美日韩精品欧美日韩精品| 国产综合自拍| 亚洲欧美日韩在线观看a三区| 欧美va亚洲va国产综合| 亚洲一区二区三区四区视频| 免费视频最近日韩| 国产亚洲精品aa| 中文一区二区在线观看| 免费成人av在线看| 亚洲一区影院| 欧美系列一区| 一区二区三区**美女毛片| 欧美国产另类| 欧美一区亚洲一区| 国产精品普通话对白| 亚洲图片欧美午夜| 亚洲精品日韩欧美| 欧美国产在线观看| 亚洲国产日韩精品| 免播放器亚洲| 久久久www成人免费精品| 国产私拍一区| 一区在线播放视频| 国产精品久久婷婷六月丁香| 亚洲乱码国产乱码精品精天堂| 久久精品视频免费| 午夜视频在线观看一区二区| 欧美日韩人人澡狠狠躁视频| 亚洲精品男同| 91久久精品美女高潮| 欧美激情久久久久久| 最新国产成人在线观看| 欧美高清视频在线观看| 欧美在线视频免费| 亚洲一区二区三区欧美| 国产精品专区h在线观看| 亚洲一区国产| 亚洲一二三区精品| 国产精品九九| 久久精彩视频| 久久国产精品一区二区三区四区| 国产精品看片你懂得| 欧美一级欧美一级在线播放| 亚洲专区欧美专区| 国产一级一区二区| 欧美96在线丨欧| 欧美激情一区二区三区在线视频| 亚洲另类一区二区| 99这里只有久久精品视频| 欧美午夜精品久久久久久孕妇| 午夜在线a亚洲v天堂网2018| 亚洲男人的天堂在线aⅴ视频| 国产欧美日本| 美女被久久久| 欧美日韩在线播| 篠田优中文在线播放第一区| 香蕉成人伊视频在线观看| 亚洲高清不卡| 一本色道久久综合精品竹菊 | 蜜桃av综合| 欧美日本不卡视频| 欧美亚洲三区| 久久这里只有| 午夜精品一区二区三区在线| 欧美一区二区三区久久精品| 亚洲人成网站在线播| 亚洲私人影吧| 亚洲人成免费| 久久国产精彩视频| 亚洲午夜精品久久久久久app| 欧美一区二区视频在线| 亚洲精品久久久久中文字幕欢迎你 | 欧美成人久久| 国产精品美女在线观看| 欧美jizz19hd性欧美| 国产精品二区三区四区| 蜜臀久久99精品久久久久久9 | 亚洲欧美日韩精品一区二区| 1024欧美极品| 9i看片成人免费高清| 黑人一区二区三区四区五区| 亚洲国产日日夜夜| 国产日韩一区二区三区在线| 亚洲三级国产| 精品999日本| 亚洲欧美日韩天堂| 亚洲午夜一二三区视频| 媚黑女一区二区| 久久九九国产| 国产日韩欧美视频| 亚洲女同精品视频| 在线亚洲自拍| 欧美日韩高清在线观看| 欧美国产先锋| 精品9999| 久久婷婷久久一区二区三区| 欧美一区2区三区4区公司二百| 久久久久五月天| 国产精品久久久免费| 一区二区av| 亚洲一区二区三区精品在线观看| 欧美高清不卡| 亚洲黄色在线视频| 亚洲国产精品尤物yw在线观看| 久久精品国产一区二区三区免费看| 欧美亚洲自偷自偷| 国产精品日韩一区二区三区| 日韩一级网站| 亚洲一区精品电影| 欧美性猛交视频| 一区二区三区黄色| 亚洲欧美日韩一区在线| 国产精品系列在线播放| 亚洲午夜在线观看| 午夜日韩av| 国产一区二区三区高清| 性一交一乱一区二区洋洋av| 久久久久se| 一区精品在线| 美女91精品| 亚洲美女在线视频| 性做久久久久久久久| 国产午夜精品久久| 久久女同精品一区二区| 欧美激情网友自拍| 一区二区三区免费网站| 国产精品久久久99| 久久国产精品久久精品国产 | 久久性天堂网| 亚洲国产婷婷| 欧美日韩一区二区三| 欧美特黄一级| 欧美日本免费一区二区三区| 99精品视频免费| 欧美影院午夜播放| 亚洲高清在线观看一区| 欧美激情一区二区三区蜜桃视频 | 国产精品99久久久久久久久 | 国产一区二区福利| 久久久久88色偷偷免费| 久久精品成人一区二区三区| 精品成人在线视频| 欧美激情第9页| 国产精品99久久久久久久vr| 久久久久五月天| 制服丝袜亚洲播放| 激情欧美国产欧美| 欧美日韩亚洲另类| 久久久久久亚洲精品不卡4k岛国| 亚洲人午夜精品| 久久亚洲高清| 亚洲欧美国产高清va在线播| 亚洲丶国产丶欧美一区二区三区| 欧美视频中文在线看| 久久蜜桃香蕉精品一区二区三区| av成人激情| 亚洲第一二三四五区| 久久精品视频在线| 亚洲影视在线| 亚洲理论在线| 亚洲级视频在线观看免费1级| 国产精品永久免费在线| 欧美日韩三级| 欧美激情精品久久久久| 久久精品一区蜜桃臀影院| 亚洲一区bb| 亚洲经典自拍| 欧美国产极速在线| 免费在线欧美视频| 久久精品视频99| 欧美综合77777色婷婷| 亚洲在线视频网站| 一区二区三区四区五区视频| 亚洲欧洲视频|