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

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 閱讀(660) 評論(3)  編輯 收藏 引用 所屬分類: Generic
Comments

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


 
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美成人免费观看| 亚洲精品偷拍| 久久国产精品一区二区| 国产欧美日韩一区| 久久精品国产99国产精品澳门| 亚洲一二三区视频在线观看| 国产精品青草久久| 久久本道综合色狠狠五月| 香蕉久久夜色精品| 一区精品久久| 亚洲激情视频网| 欧美日本在线视频| 亚洲欧美偷拍卡通变态| 欧美有码在线观看视频| 有坂深雪在线一区| 亚洲激情在线播放| 国产精品家教| 久久精品免费电影| 你懂的亚洲视频| 在线亚洲免费视频| 午夜综合激情| 亚洲精品国产精品国自产观看浪潮| 亚洲国产精品va在线观看黑人| 欧美日韩国产电影| 久久激情视频免费观看| 麻豆精品传媒视频| 亚洲影视九九影院在线观看| 欧美一区二区三区成人| 亚洲精品一二| 欧美一区二区大片| 国产精品99久久久久久www| 亚洲欧美国产视频| 亚洲激情国产精品| 亚洲欧美日韩在线一区| 最新中文字幕一区二区三区| 这里只有精品视频在线| 亚洲国产精品视频| 亚洲在线视频| 99av国产精品欲麻豆| 欧美一区二区女人| 亚洲伊人一本大道中文字幕| 久久亚洲私人国产精品va| 亚洲欧美日韩精品| 欧美mv日韩mv国产网站| 久久久精品动漫| 欧美日韩亚洲系列| 欧美成人综合一区| 国产亚洲精品久| 一本大道av伊人久久综合| 亚洲电影免费观看高清完整版在线| 亚洲调教视频在线观看| 亚洲三级免费观看| 久久久久国产精品一区三寸| 午夜精品999| 欧美日韩国语| 亚洲国产日韩在线一区模特| 1000部国产精品成人观看| 午夜国产精品影院在线观看| 亚洲午夜精品一区二区三区他趣| 欧美成人午夜77777| 美女主播视频一区| 狠狠综合久久av一区二区老牛| 亚洲一区二区三区精品动漫| 亚洲一区二区av电影| 欧美巨乳在线观看| 亚洲精品一二三| 亚洲美女中出| 欧美精品在线看| 91久久久在线| 一二美女精品欧洲| 欧美日韩亚洲一区在线观看| 亚洲激情网站免费观看| 亚洲三级视频| 欧美极品aⅴ影院| 91久久午夜| 亚洲午夜极品| 国产精品私房写真福利视频| 亚洲午夜精品在线| 欧美主播一区二区三区美女 久久精品人 | 亚洲综合视频1区| 国产精品成人一区二区三区夜夜夜| 亚洲精品影视| 亚洲一区免费视频| 国产精品亚洲成人| 午夜精品区一区二区三| 久久九九国产精品| 在线精品福利| 欧美大片在线观看一区| 亚洲毛片av在线| 欧美一区二区在线看| 韩日精品视频一区| 欧美fxxxxxx另类| 夜夜嗨av一区二区三区网页| 亚洲欧美日韩综合国产aⅴ| 国产精品手机视频| 久久久水蜜桃| 亚洲九九九在线观看| 性欧美大战久久久久久久免费观看| 国产日韩一区| 欧美成人综合在线| 亚洲尤物在线| 免费不卡欧美自拍视频| 中国女人久久久| 国内揄拍国内精品少妇国语| 欧美激情女人20p| 亚洲欧美国产制服动漫| 免费在线成人av| 宅男噜噜噜66一区二区| 国产视频亚洲| 欧美日韩 国产精品| 久久国产精品久久久久久电车| 欧美激情一区二区三区全黄| 亚洲一区二区三区在线看| 狠狠狠色丁香婷婷综合久久五月| 欧美gay视频激情| 西西人体一区二区| 91久久精品美女高潮| 久久精品官网| 亚洲午夜激情网页| 亚洲国产99精品国自产| 国产精品成人观看视频国产奇米| 久久久久久免费| 亚洲永久免费| 亚洲精品人人| 亚洲国产高清在线观看视频| 久久九九精品| 性做久久久久久久久| 亚洲最新中文字幕| 亚洲成色精品| 国内精品久久久久影院色| 欧美午夜宅男影院在线观看| 欧美jjzz| 能在线观看的日韩av| 久久成人一区| 先锋影音久久久| 亚洲自拍偷拍一区| 一区二区三区日韩精品| 亚洲黄色在线视频| 亚洲高清免费| 亚洲国产精品va在线看黑人| 模特精品在线| 免费视频一区二区三区在线观看| 久久精品人人做人人爽| 欧美亚洲免费| 性久久久久久久久久久久| 亚洲性视频网址| 亚洲视频在线观看| 一本到高清视频免费精品| 亚洲精品乱码久久久久久| 亚洲国产裸拍裸体视频在线观看乱了| 国产一区白浆| 红桃视频国产一区| 在线播放日韩专区| 在线精品视频一区二区三四| 狠狠色伊人亚洲综合成人| 国产在线成人| 亚洲高清免费在线| 亚洲国产精品欧美一二99| 亚洲黄一区二区| 亚洲精品综合精品自拍| 亚洲乱码国产乱码精品精| 亚洲美女91| 国产精品99久久久久久宅男| 亚洲一区二区四区| 性做久久久久久免费观看欧美| 久久成人18免费观看| 久久人人爽人人爽| 欧美大片免费观看| 亚洲精品一二| 欧美亚洲一区三区| 老牛影视一区二区三区| 欧美激情在线免费观看| 欧美午夜精品久久久久久人妖| 国产精品嫩草影院一区二区| 韩日午夜在线资源一区二区| 亚洲国产欧美久久| 中文在线不卡视频| 久久精品国产99精品国产亚洲性色| 久久综合五月| 日韩天堂在线观看| 亚洲欧美日韩精品一区二区| 久久久97精品| 国产精品wwwwww| 一区二区三区在线视频观看| 99在线|亚洲一区二区| 西西裸体人体做爰大胆久久久| 美女精品自拍一二三四| 亚洲人成网站影音先锋播放| 午夜电影亚洲| 欧美电影美腿模特1979在线看| 国产精品美女主播| 亚洲精华国产欧美| 欧美一级理论性理论a| 亚洲高清不卡一区| 午夜一级在线看亚洲| 欧美日韩高清在线观看| 黄网动漫久久久| 午夜伦理片一区| 亚洲精品永久免费| 久久久99精品免费观看不卡|