c++ template全覽

c++ template全覽

ID:14404098

大?。?.70 MB

頁數(shù):272頁

時間:2018-07-28

c++ template全覽_第1頁
c++ template全覽_第2頁
c++ template全覽_第3頁
c++ template全覽_第4頁
c++ template全覽_第5頁
資源描述:

《c++ template全覽》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在學術(shù)論文-天天文庫。

1、C++Template全覽C++Templates-TheCompleteGuide1說明本書是在侯捷等翻譯的繁體中文版基礎(chǔ)上,用軟件將PDF文件轉(zhuǎn)換成word文件,然后將繁體轉(zhuǎn)換成簡體,再將一些臺灣的術(shù)語改成了大陸的術(shù)語,并經(jīng)過簡單排版后的結(jié)果。對各位初學C++Template的朋友應(yīng)該有所幫助。丁志強zqding@hotmail.com2關(guān)于本書AboutThisBook作為C++的一部分,盡管templates(模板)已經(jīng)存在二十多年(并且以其它多種面目存在了幾乎同樣長的時間),但它還是會招引誤解、誤用和爭議。在此同時,愈來愈多人覺察templates是產(chǎn)生更干凈、更快速、更精明

2、的軟件的一個強而有力的手段。確實,templates已經(jīng)成為數(shù)種新興C++編程思維模型(programmingparadigms)的基石。但是我們發(fā)現(xiàn),大多數(shù)現(xiàn)有書籍和文章對于C++templates的理論和應(yīng)用方面的論述,顯得過于淺薄。有些書籍雖然很好地評述了各種template-based技法,卻并沒有精確闡述C++語言本身如何使這些技法得以施行。于是,無論新手或?qū)<?,都好像在和templates較勁,費盡心思去琢磨為何他們的程序代碼不能按想象的方式執(zhí)行。這樣的觀察結(jié)果,正是我們兩人寫這本書的主要動機之一。對于本書,我倆心中各有獨立的要旨和不同的寫作方式:David的目標是為讀者提

3、供一份完整的參考手冊,其中講述C++template語言機制的細節(jié),以及重要的templates高級編程技法。他比較關(guān)注內(nèi)容的精確與完備。Nico希望為自己和其它日常生活中使用templates的程序員帶來一本有幫助的書。這意味本書將以一種直觀易懂、結(jié)合實踐的方式呈現(xiàn)給讀者。從某種意義上,你可以把我們看做是科學家和工程師的組合:我們按照相同的原則寫作,但側(cè)重點有些不同(當然,也有很多情況是重迭的)。Addison-Wesley把我倆的努力結(jié)合在一起,于是你擁有了一本我倆心目中兩方面緊密結(jié)合的書籍:既是C++template教本(tutorial),也是C++template的詳盡參考手

4、冊(reference)。作為教本,本書不僅涵蓋語言基本要素的介紹,也致力培養(yǎng)某種得以設(shè)計出切實可行之解決方案的直覺。作為參考手冊,本書既包括C++template的語法和語意,也是各種廣為人知和鮮為人知的編程慣用手法(idioms)和編程技術(shù)的全面總覽。1.1閱讀本書之前你應(yīng)該知道的事要想具備學習本書的最佳狀態(tài),你應(yīng)該先已了解C++。本書中我們只講述某些語言特性的細節(jié),并不涉及語言基礎(chǔ)知識。你應(yīng)該熟知類別(classes)、繼承(inheritance)等概念,你應(yīng)該能夠利用C++標準庫所提供的組件(例如iostreams和各種容器,containers)編寫C++程序。如有必要,我

5、們會回顧某些微妙問題—即使這些問題并不直接與templates相關(guān)。這可確保本書對于專家和中級水平的程序員皆適用。本書大部份以1998年的C++Standard([Standard98])為依據(jù),同時兼顧C++標準委員會釋出的第一份技術(shù)勘誤([Standard02])中的說明。如果你覺得你的C++基礎(chǔ)還不夠好,我們推薦你閱讀[StroustrupC++PL]、[JosuttisOOP]和[JosuttisLib]等書籍來充實知識。這些書非常好地講述了最新的C++語言及其標準庫。你可以在附錄B.3.5找到更多參考數(shù)據(jù)。1.2本書組織結(jié)構(gòu)我們的目標是為兩個族群提供必要信息:(1)準備開始使

6、用templates并從中獲益者,(2)富有經(jīng)驗并希望緊追最新技術(shù)者。基于此種想法,我們決定將本書組織為以下四篇:第一篇介紹templates涉及的基本概念。這部份采用循序漸進的教本(tutorial)方式。第二篇展現(xiàn)語言細節(jié),對template相關(guān)構(gòu)件(constructs)來說是一份便利的參考手冊。第三篇講述C++templates的基礎(chǔ)設(shè)計技術(shù),從近乎微不足道的構(gòu)想到精巧復(fù)雜的編程技法都有。某些內(nèi)容在其它出版物中甚至從未被提到。第四篇在前兩篇的基礎(chǔ)上討論templates的各種普遍應(yīng)用。每一篇都包含數(shù)章。此外我們還提供多份附錄,涵蓋內(nèi)容不限于templates,例如附錄B的「C+

7、+重載解析機制(overloadresolution)」綜覽。第一篇各章應(yīng)該循序閱讀,例如第3章內(nèi)容就是是建立在第2章內(nèi)容之上。其它三篇各章之間3的聯(lián)系較松。例如你可以閱讀functors那一章(第22章),不必先閱讀smartpointers那一章(第20章)。最后,我們提供了一份相當完備的索引,便利讀者以自己的方式,跳脫任何順序來閱讀本書。1.3如何閱讀本書如果你是一位C++程序員,打算學習或鞏固templates概念,請仔細閱讀第一篇(基

當前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。