注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)軟件與程序設(shè)計C/C++及其相關(guān)C++編程基礎(chǔ):標(biāo)準(zhǔn)庫編程

C++編程基礎(chǔ):標(biāo)準(zhǔn)庫編程

C++編程基礎(chǔ):標(biāo)準(zhǔn)庫編程

定 價:¥56.00

作 者: (美)Steve Heller著;胡鳳燕,朱德爽等譯
出版社: 電子工業(yè)出版社
叢編項:
標(biāo) 簽: C++

ISBN: 9787505391468 出版時間: 2003-09-01 包裝: 膠版紙
開本: 26cm 頁數(shù): 494 字數(shù):  

內(nèi)容簡介

  這是初學(xué)者學(xué)習(xí)標(biāo)準(zhǔn)C++的一本理想書籍。本書的寫作體例非常有特色,其內(nèi)容以初學(xué)者(一個聰明的女孩,蘇珊)提出問題、編程高手(本書的作者,史狄夫)回答問題的形式為主線進行組織,知識講解和概念分析非常適合初學(xué)者的思維。而且,這里的對話都是真實對話的記錄,對話中的男女主人公演繹了一段動人的愛情故事,現(xiàn)在他們建立了一個幸福的家庭。本書以對話的方式,逐步深入地講解C++編程中的概念和技巧,特別講述初學(xué)者容易混淆的概念,使得初學(xué)者可以快速掌握C++的開發(fā)技巧。本書首先介紹最基本的編程概念,讓初學(xué)者解除編程的神秘面紗并知道如何進行編程,然后介紹編程的基礎(chǔ)知識,通過開發(fā)幾個比較實用的例子來介紹如何使用C++語言進行編程,這幾個例子分別是:商店的庫存管理、創(chuàng)建自定義的string類以及家庭物品清單項目。通過這些例子,讀者可以確切地理解專業(yè)程序設(shè)計人員是如何開發(fā)一個完整的應(yīng)用程序并部署于實際環(huán)境的。貫穿本書,作者介紹了C++的一些重要語言特征,如類、標(biāo)準(zhǔn)類庫、數(shù)組、指針、封裝、繼承、多態(tài)性、枚舉和名字空間等。與一般的初學(xué)者用書不同,本書使用的是符合產(chǎn)業(yè)標(biāo)準(zhǔn)的代碼,讀者可以學(xué)習(xí)到最新、最實用的語法和標(biāo)準(zhǔn)C++開發(fā)工具。附帶光盤中含有所有的示例代碼和標(biāo)準(zhǔn)C++編譯器,方便讀者的學(xué)習(xí)。前言大多數(shù)科技書所存在的基本問題是作者太想當(dāng)然。一個人一旦成為高科技領(lǐng)域(如C++編程)的專家,他往往就不知道如何與正在努力奮斗的新手溝通。還有一點必須說明:大部分科技人員并不是很好的作者。幸運的是,程序設(shè)計員中10%最頂尖的人有望成為很好的作者——我的老朋友SteveHeller就是這兩方面的高手。他非常聰明,知道自己不能夠像編程新手一樣考慮問題,所以他向新手尋求幫助?,F(xiàn)在你手中拿的這本書不僅非常巧妙,而且具有特殊的、意想不到的魅力,這使它成為我所見過的最出色的科技書之一。這是因為,史狄夫所找到的寫作伙伴具有與他一樣的智慧,而且她對這方面知識的渴望和一無所知成了史狄夫的熟練技能的完美補充。本書不但是史狄夫和蘇珊共同寫作的書本的選集,而且還是兩種非凡智慧結(jié)合到一起的故事。他們連貫的對話使本書更為親切,而這正是大多數(shù)科技指南所沒有的。他們都從對方那里得到了最有價值的收獲,史狄夫讓蘇珊不斷思考、學(xué)習(xí)并進步,而蘇珊使史狄夫從高度抽象的世界回歸到日常經(jīng)歷的實例和模擬。對話的結(jié)果是用兩個聲音將許多主題交織在一起的優(yōu)美樂章。史狄夫揭開了C++的神秘性,而蘇珊不斷學(xué)習(xí)該語言,這兩者結(jié)合在一起。他們一起研究計算機的內(nèi)部世界時,不但學(xué)到了字節(jié)和硅等內(nèi)容,而且他們相互之間產(chǎn)生了不斷增長的好感和關(guān)懷。蘇珊學(xué)到了她所不知道的知識,而史狄夫進行了復(fù)習(xí)——多么令人愉悅的經(jīng)歷。有多少編程入門書也是愛情故事?這可能是惟一的。我不強求大家效仿,但我要說的是,史狄夫和蘇珊之間的關(guān)系所產(chǎn)生的著作不僅僅是頂級的技術(shù)指導(dǎo)書,而且是精妙的藝術(shù)。認識他倆是我的榮幸,而介紹這本書更是我的榮耀。我希望他們發(fā)現(xiàn)問題、解決問題的過程能在各位的學(xué)習(xí)過程中起到指導(dǎo)作用。EricS.Raymond序言本書是否適合你?如果你是其他計算機語言(非C++語言)的程序員,而想提高自己的能力,那么只要讀幾頁就可以毫不費力地得出結(jié)論。那么,對于沒有編程經(jīng)驗的新手又如何呢?在這種情況下,下面給出的一些測驗可能會對大家有所幫助:1.是否想知道計算機程序內(nèi)部是如何工作的以及如何編寫自己的程序?2.是否愿意盡全力學(xué)習(xí)一門復(fù)雜的技術(shù)科目?3.是否有幽默感?如果所有答案都是肯定的并且能夠堅持到底,那么你將能夠從中學(xué)到很多知識。常識認為,編程是少數(shù)專業(yè)人員所做的困難工作。我寫這本書的主要原因之一是,我認為這種態(tài)度是錯誤的,讓大家了解程序如何運行以及如何編程是可能的,而且甚至是合乎需要的。對于那些不知道計算機是如何執(zhí)行那些看起來很神秘的工作的人,他們在越來越依賴于這些非凡機器的社會中,將越來越處于不利地位。除了話題之外,我看不出一本書枯燥乏味的任何正當(dāng)原因。而且,我已經(jīng)盡我所能使此書淺顯易懂。不過,不要因此就覺得該學(xué)科很簡單:編程沒有捷徑可走,它比幾何學(xué)更為煩瑣。尤其是對于沒有編程經(jīng)驗的人,C++比實際中其他任何研究領(lǐng)域更能拓寬你的思維。想要學(xué)習(xí)C++,那為什么要選擇這本書而不是其他數(shù)不勝數(shù)的C++入門書呢?本書與其他入門書的一個不同點是,其他書中有許多仍沒有使用C++標(biāo)準(zhǔn)類庫①,這是C++語言定義中非常重要的一部分。本書將使用一些標(biāo)準(zhǔn)類庫的功能,以便于讀者開始了解C++語言中這一重要部分。當(dāng)然,本書沒有包含其全部內(nèi)容,這將需要更多的空間。實際上介紹標(biāo)準(zhǔn)類庫的書有許多,不過我不清楚哪些適合編程新手。有一個因素使得本書是獨一無二的:一個真實的、活生生的人的參與,她在讀這份材料之前什么都不知道,她就是我的妻子蘇珊②。她的主要貢獻就是從初稿開始認真閱讀書中每一行,并通過E-mail對她所不理解的內(nèi)容進行提問。我同樣通過E-mail回答她的問題,直到我倆都滿意——她理解了問題而材料文本變得清晰為止。文本完成之后,我抽出部分合適的E-mail信件,對它們進行編輯,檢查其拼寫和標(biāo)點符號等,然后將它們加入到文本中最合適的地方。對本書的這個最新版本,我們討論了由標(biāo)準(zhǔn)類庫的應(yīng)用而引起的改變。作為討論的結(jié)果,我對現(xiàn)有的E-mail信件進行了適當(dāng)?shù)靥砑雍托薷?,以使它們在變化的環(huán)境中講得通。不過,蘇珊對這些信件中有關(guān)她的內(nèi)容做最終決定,這樣,它們?nèi)允钦鎸嵉膶υ挕.?dāng)然,這些對話的確占了一定的篇幅,或許因此而減少了一些有關(guān)C++和編程的信息。因此,如果想從書本的每一頁上獲得最大量的新信息,那么或許該選擇其他書,如BjarneStroustrup所編寫的優(yōu)秀的“TheC++ProgrammingLanguage”(ISBN0-201-88954-4),或者由AndrewKoenig和BarbaraMoo所著的“AcceleratedC++”(ISBN0-201-70353-X)。但是,從我的其他書本的讀者所獲得的絕大部分評論都表明:他們認為我這種方式很有幫助,我猜想你們也會有此感覺。在這個序的后面,蘇珊寫了關(guān)于她加入此工程的敘述。我建議大家在開始學(xué)習(xí)后面的內(nèi)容之前先閱讀此敘述,因為這里說明了她是如何以及為什么致力于使你的工作更簡單而更有趣。說到蘇珊,下面有一小段關(guān)于如何學(xué)習(xí)本書的對話,這段對話是在她首次學(xué)習(xí)本書第2章和第3章時進行的。蘇珊:讓我說,要覺得真正了解了它,我真的需要再研究兩遍?,F(xiàn)在我可以這么做,但是我不知道你是否希望我這么做。我想:對大多數(shù)人來說,每章讀一遍就夠了。史狄夫:事實上,我希望讀者有必要的話對這些章節(jié)多讀幾遍;對于編程新手,我認為這是必要的。編程是最復(fù)雜的人類學(xué)科之一,盡管它不需要學(xué)科的數(shù)學(xué)能力,如核物理學(xué)①。我努力使我的解釋盡可能簡單,但不進行大量的工作和思考是不可能學(xué)好編程(或其他復(fù)雜學(xué)科)的。她完成文本的多遍閱讀并從中學(xué)到更多知識之后,我們繼續(xù)下面的討論:蘇珊:或許這點應(yīng)該在序言或其他位置指出。當(dāng)然,最終讀者將同我一樣明白這點,不過我花了不少時間才得出此結(jié)論。如果事先知道這一點,那么,或許我不會因為讀完一遍后不明白而氣餒。史狄夫:我在序言中真正要講的是,讀者不要因此而認為這如同在公園里散步一樣簡單。無論如何,請不要氣餒。我認為你已經(jīng)在沒有任何專業(yè)背景的情況下學(xué)到了許多非常專業(yè)的知識,這是值得驕傲的!在本書中,我們將多次聽到蘇珊的心聲。在本書的測試和修訂過程中,我們通過E-mail進行討論,她的話將被頻繁地摘錄出來。我希望她的意見和我的回答將對你學(xué)習(xí)此技術(shù)材料有所幫助。言歸正傳,該告訴讀者在本書中發(fā)現(xiàn)錯誤或遇到其他問題時如何獲得更新和幫助了。最好的方法是訪問我的站點:steveheller.com,我的E-mail地址是steve@steveheller.com。如果你喜歡這本書并想要告訴其他人,那么你可能想在Amazon.com上撰寫在線評論——可以通過訪問我的主頁進行,也可以沿著“用戶評論”鏈接到Amazon上。請注意,對于“classes”(類)和其他C++術(shù)語的復(fù)數(shù),我都用統(tǒng)一的等寬字體,而不是在復(fù)數(shù)詞尾用普通字體,如“classes”,這是因為,我認為在一個單詞中用不同的字體容易分散注意力。在C++中沒有復(fù)數(shù)術(shù)語,知道這一點就不會出現(xiàn)將“classes”當(dāng)做C++術(shù)語的錯誤,實際上此術(shù)語是“class”。如果出現(xiàn)這種錯誤,那么將很快就會發(fā)現(xiàn),因為在程序中錯誤使用術(shù)語時將得到出錯消息。下面是來自我的試讀者蘇珊的心聲。我希望大家從她的參與中得到的收獲能和我一樣多。致謝

作者簡介

暫缺《C++編程基礎(chǔ):標(biāo)準(zhǔn)庫編程》作者簡介

圖書目錄

第1章  編程簡介
  1.1  定義
  1.2  起步
第2章  硬件基礎(chǔ)知識
  2.1  定義
  2.2  本章目標(biāo)
  2.3  主機箱內(nèi)部的秘密
  2.4  二進制記數(shù)系統(tǒng)
  2.5  習(xí)題
  2.6  使用16位寄存器名稱
  2.7  本章回顧
  2.8  小結(jié)
  2.9  習(xí)題答案
第3章  編程基礎(chǔ)知識
  3.1  定義
  3.2  本章目標(biāo)
  3.3  快而準(zhǔn)的計算
  3.4  編譯程序
  3.5  CPU如何存儲和操作內(nèi)存中的數(shù)據(jù)
  3.6  內(nèi)存中數(shù)據(jù)的布局
  3.7  習(xí)題(第1套)
  3.8  char類型和string類型
  3.9  using、namespace和std
  3.10  int main()
  3.11  習(xí)題(第2套)
  3.12  輸入/輸出
  3.13  改變執(zhí)行流程
  3.14  while循環(huán)
  3.15  習(xí)題(第3套)
  3.16  第一個比較實用的程序
  3.17  習(xí)題(第4套)
  3.18  本章回顧
  3.19  小結(jié)
  3.20  題答案
第4章  其他基礎(chǔ)知識
  4.1  本章目標(biāo)
  4.2  算法
  4.3  頒發(fā)任意數(shù)量的獎項
  4.4  下標(biāo)變量
  4.5  選擇排序
  4.6  程序故障
  4.7  本章回顧
  4.8  習(xí)題
  4.9  小結(jié)
  4.10  習(xí)題答案
第5章  函數(shù)文化
  5.1  定義
  5.2  本章目標(biāo)
  5.3  模塊與函數(shù)
  5.4  使用函數(shù)
  5.5  軟件是虛擬計算機
  5.6  變量的作用域
  5.7  全局變量的不足
  5.8  關(guān)于使用棧的更多信息
  5.9  本章回顧
  5.10  習(xí)題
  5.11  小結(jié)
  5.12  習(xí)題答案
第6章  庫存管理
  6.1  定義
  6.2  本章目標(biāo)
  6.3  自定義數(shù)據(jù)類型
  6.4  Stockltem類
  6.5  更多的定義
  6.6  具體數(shù)據(jù)類型
  6.7  class作用域
  6.8  Stockltem類接口的更多信息
  6.9  使用標(biāo)準(zhǔn)類庫
  6.10  引用參數(shù)
  6.11  檢查庫存管理中的誤放商品
  6.12  本章回顧
  6.13  習(xí)題
  6.14  小結(jié)
  6.15  習(xí)題答案
第7章  創(chuàng)建自己的string類
  7.1  本章目標(biāo)
  7.2  C字符串直接量與string類的變量
  7.3  用new和delete進行動態(tài)內(nèi)存分配
  7.4  從C字符串構(gòu)造string類對象
  7.5  賦值運算符
  7.6  解決賦值運算符問題
  7.7  引用參數(shù)的const修飾符
  7.8  調(diào)用operator=
  7.9  本章回顧
  7.10  習(xí)題
  7.11  小結(jié)
  7.12  習(xí)題答案
第8章  繼續(xù)開發(fā)自己的string類
  8.1  本章目標(biāo)
  8.2  string復(fù)制構(gòu)造函數(shù)
  8.3  有關(guān)private訪問說明符的更多信息
  8.4  本章初回顧
  8.5  給string類增加其他功能
  8.6  本章再回顧
  8.7  習(xí)題
  8.8  小結(jié)
  8.9  習(xí)題答案
第9章  繼承
  9.1  定義
  9.2  本章目標(biāo)
  9.3  庫存管理
  9.4  給Inventory類添加Reorderhems函數(shù)
  9.5  添加有效期
  9.6  protected訪問說明符
  9.7  靜態(tài)成員函數(shù)
  9.8  stream類
  9.9  stringstream進階
  9.10  本章回顧
  9.11  本章習(xí)題
  9.12  小結(jié)
第10章  多態(tài)性
  10.1  定義
  10.2  本章目標(biāo)
  10.3  多態(tài)性簡介
  10.4  習(xí)題(第一套)
  10.5  多態(tài)對象
  10.6  更多定義
  10.7  為什么需要多態(tài)對象
  10.8  實現(xiàn)安全的多態(tài)性
  10.9  重新實現(xiàn)新版Stoekltem的標(biāo)準(zhǔn)成員函數(shù)
  10.10  在構(gòu)造過程中避免無限回歸
  10.11  引用計數(shù)
  10.12  共享工人對象
  10.13  為什么在Stockltem中需要m_Count
  10.14  本章回顧
  10.15  習(xí)題(第二套)
  10.16  小結(jié)
第11章  家庭物品清單項目
  11.1  定義
  11.2  本章目標(biāo)
  11.3  家庭物品清單項目的數(shù)據(jù)項
  11.4  再次使用“經(jīng)理/工人”這個慣用語
  11.5  向類用戶隱藏不必要的信息
  11.6  將元素數(shù)量存儲在文件中
  11.7  有計劃地創(chuàng)建數(shù)據(jù)文件
  11.8  增加編輯記錄的能力
  11.9  HomehemMusic的新成員函數(shù)
  11.10  本章回顧
  11.11  習(xí)題
  11.12  小結(jié)
第12章  家庭物品清單項目深入開發(fā)
  12.1  定義
  12.2  本章目標(biāo)
  12.3  擴充string類的功能
  12.4  如何實現(xiàn)新的string類功能
  12.5  包含保護
  12.6  xstring類的實現(xiàn)
  12.7  不區(qū)分大小寫的搜索
  12.8  通過子串搜索
  12.9  將它集合到一起
  12.10  到底怎樣進行軟件開發(fā)
  12.11  本章回顧
  12.12  小結(jié)
第13章  分析家庭物品清單項目
  13.1  定義
  13.2  本章目標(biāo)
  13.3  家庭物品清單程序的最終版本
  13.4  使用名字空間來組織通用函數(shù)
  13.5  HomeUtility名字空間中的函數(shù)
  13.6  核對物品清單
  13.7  對Homeltem類進行最后處理
  13.8  我們是否開心
  13.9  本章回顧
  13.10  習(xí)題
  13.11  小結(jié)
附錄A  遺留問題總結(jié)
附錄B  術(shù)語表
參考書目

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.dappsexplained.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號