出版時間:2010-8 出版社:機械工業(yè) 作者:鄔延輝//王小權//陳葉芳 頁數(shù):263
前言
C++語言是從C語言發(fā)展而來的一種高級程序設計語言,它具有全面兼容C語言并支持面向對象的特點,深受廣大編程愛好者的喜愛。在過去的十多年里,面向對象設計方法已經成為開發(fā)大型軟件的主要手段。盡管迅猛發(fā)展的Java語言對C++形成強有力的沖擊,但C++語言仍然是應用最廣泛的面向對象程序設計語言之一,用在高等院校的教學和業(yè)界的軟件開發(fā)中。C++適合于系統(tǒng)級的程序設計,如編譯器設計,而Java語言是開發(fā)圖形界面和跨平臺程序的理想語言,二者將會并存和互補。 目前,國內有許多C++教材,它們大都包含了大量的C語言教學內容,對于已經學過C語言課程的讀者來講,這些教材顯得篇幅過長,不適合在有限的課堂教學學時情況下使用。本書一開始就進入類和對象的介紹,關注面向對象的設計思想,適合于已經學過C語言課程并將開始學習C++語言的讀者,對于在實際工作中需要用面向對象技術來編寫C++程序的工程技術人員也很有幫助。本書要求讀者具有C語言基礎知識,是一本面向C++初學者的入門教材。 本書主要特點 1) 將統(tǒng)一建模語言UML融入到每部分學習內容中,講解例題前,用UML類圖對問題進行分析,使讀者掌握用面向對象方法分析復雜問題,而不僅僅是學習面向對象語法。 2) 選取大量貼近現(xiàn)實和現(xiàn)象的例題進行講解,其中有些例題是作者全新設計出來的,這些例題可以使讀者對程序產生濃厚的興趣,增強學習效果。每章在講述知識點和例題后,通過一個完整的應用實例來鞏固所學知識點。 3) 本書每章都有形式多樣的課后習題,讓讀者自己動手來編寫C++程序,使他們從能夠看懂C++程序,到能夠分析問題,并動手編寫程序來解決問題,徹底解決以往“看得懂、不會編”的情況。
內容概要
作者結合多年的C++教學經驗,根據(jù)教學大綱精心設計并且編寫了書中內容。本書依據(jù)ANSI C++標準,闡述面向對象的程序設計思想,引出必要的語法知識,詳細介紹了C++語言本身。針對初學者的特點,書中結合大量實例講解面向對象程序設計的基本概念和方法,并增加了UML類圖的介紹以及STL程序設計的內容。 全書分為9章,在講解了C++基礎知識之后,引導讀者深入學習類與對象、繼承與派生、多態(tài)性、獨立編譯與命名空間、模板、輸入輸出流、string類以及異常處理。 本書文字流暢、概念清晰、通俗簡潔,并配有多種形式的習題,適合作為大專院校面向對象程序設計課程的入門教材。
書籍目錄
前言教學建議第1章 C++基礎知識 1.1 面向對象程序設計語言 1.1.1 從C到C++ 1.1.2 Java 1.2 面向對象程序設計的基本概念 1.2.1 類 1.2.2 對象 1.2.3 封裝 1.2.4 繼承 1.2.5 多態(tài)性 1.3 面向對象軟件的開發(fā)步驟 1.4 C++程序開發(fā)過程 1.5 UML類圖 1.6 一個簡單的C++程序 1.7 小結 習題第2章 類與對象 2.1 類與對象的定義 2.1.1 類的定義 2.1.2 成員函數(shù)的定義 2.1.3 類成員的訪問控制 2.1.4 對象的定義 2.1.5 對象的作用域和生存期 2.2 構造函數(shù)和析構函數(shù) 2.2.1 用于初始化的構造函數(shù) 2.2.2 默認構造函數(shù) 2.2.3 拷貝構造函數(shù) 2.2.4 析構函數(shù) 2.3 this指針 2.4 靜態(tài)成員 2.4.1 靜態(tài)數(shù)據(jù)成員 2.4.2 靜態(tài)成員函數(shù) 2.5 常成員 2.5.1 常對象 2.5.2 常數(shù)據(jù)成員 2.5.3 常成員函數(shù) 2.6 類的組合 2.7 友元函數(shù)和友元類 2.8 動態(tài)內存分配 2.8.1 new和delete 2.8.2 深拷貝與淺拷貝 2.9 應用實例—計數(shù)器 2.10 小結 習題第3章 繼承與派生 3.1 基類和派生類 3.1.1 為何需要繼承 3.1.2 派生類聲明 3.2 派生類的訪問控制 3.2.1 公有繼承 3.2.2 私有繼承 3.2.3 保護繼承 3.3 派生類的構造函數(shù)和析構函數(shù) 3.3.1 派生類構造函數(shù)和析構函數(shù)的執(zhí)行順序 3.3.2 派生類構造函數(shù)和析構函數(shù)的構造規(guī)則 3.4 多繼承 3.4.1 多繼承的聲明 3.4.2 多繼承的構造函數(shù)和析構函數(shù) 3.4.3 二義性 3.4.4 虛基類 3.5 賦值兼容規(guī)則 3.6 應用實例—小型診所的簡單信息管理程序 3.7 小結 習題第4章 多態(tài)性 4.1 多態(tài)性概述 4.1.1 多態(tài)的分類 4.1.2 多態(tài)的實現(xiàn) 4.2 虛函數(shù) 4.2.1 靜態(tài)聯(lián)編和動態(tài)聯(lián)編 4.2.2 虛函數(shù)的作用和定義 4.2.3 虛函數(shù)的使用原則 4.2.4 虛函數(shù)的訪問 4.3 純虛函數(shù)與抽象類 4.4 函數(shù)重載 4.5 運算符重載 4.5.1 運算符重載的規(guī)則 4.5.2 運算符重載為成員函數(shù) 4.5.3 運算符重載為友元函數(shù) 4.5.4 其他運算符重載 4.6 應用實例 4.7 小結 習題第5章 獨立編譯與命名空間 5.1 獨立編譯 5.1.1 C++程序的組織結構 5.1.2 編譯預處理 5.2 命名空間 5.2.1 命名空間和using預編譯指令 5.2.2 創(chuàng)建命名空間 5.2.3 無名命名空間 5.3 小結 習題第6章 模板 6.1 模板的概念 6.2 函數(shù)模板 6.2.1 函數(shù)模板的定義 6.2.2 函數(shù)模板的實例化 6.3 類模板 6.3.1 類模板的定義 6.3.2 類模板的實例化 6.3.3 類模板的默認參數(shù) 6.4 標準模板庫STL 6.5 應用實例 6.6 小結 習題第7章 輸入和輸出流類庫 7.1 輸入/輸出流概念和流類庫結構 7.2 無格式輸入/輸出 7.2.1 輸出運算符“<<” 7.2.2 輸入運算符“>>” 7.2.3 成員函數(shù)put()輸出字符 7.2.4 成員函數(shù)get()和getline() 7.2.5 成員函數(shù)read()和write() 7.3 格式化輸入/輸出 7.3.1 使用ios類成員函數(shù) 7.3.2 使用操縱符 7.4 文件流操作 7.4.1 文件打開與關閉 7.4.2 文件讀寫 7.5 應用實例 7.6 小結 習題第8章 string類 8.1 string類對象定義 8.1.1 char型字符串 8.1.2 string型字符串定義 8.1.3 string類構造函數(shù) 8.2 string類成員函數(shù) 8.3 string類操作符 8.4 應用實例 8.5 小結 習題第9章 異常處理 9.1 異常處理基礎 9.2 異常處理編程技術 9.2.1 異常處理的基本思想 9.2.2 異常處理的實現(xiàn) 9.2.3 異常處理規(guī)則 9.2.4 異常事件的多路捕獲 9.2.5 異常處理中的構造與析構 9.2.6 異常處理核心技術——棧展開 9.3 應用實例 9.4 小結 習題附錄A 實驗指導附錄B C++語言中的關鍵字參考文獻
章節(jié)摘錄
插圖:類(class)是面向對象程序設計語言的基本概念,在C++中也是如此。在現(xiàn)實生活中,人們常常把眾多的事物歸納并劃分為若干類型,這是認識客觀世界常用的思維方法.比如,我們把載人數(shù)量為5-7人的、各種品牌的、使用汽油或柴油的、四個輪子的汽車統(tǒng)稱為小轎車,也就是說,從眾多的具體車輛中抽象出小轎車類。再比如,我們把一所高校所有在校的、男性或女性的、各個班級的、各個專業(yè)的本科生、研究生統(tǒng)稱為學生,可以從眾多的具體學生中抽象出學生類。對事物進行分類時,依據(jù)的原則是抽象,將注意力集中在與當前目標有關的本質特征上,而忽略事物的非本質特征,進而找出這些事物的所有共同點,把具有共同性質的事物劃分為一類,得到一個抽象的概念。日常生活中的汽車、房子、人、衣服等概念都是人們在長期的生產和生活實踐中抽象出來的概念。面向對象方法中的“類’,是具有相同屬性和服務的一組對象的集合。它為屬于該類的全部對象提供了抽象的描述,其內部包括屬性和行為兩個主要部分。1.2.2對象對象(0bJcct)是現(xiàn)實世界中一個實際存在的事物,它可以是看得見、摸得到的物體(如一本書),也可以是無形的(如一項計劃)。對象是構成現(xiàn)實世界的一個獨立單位,它具有自己的靜態(tài)特征(可以用某種數(shù)據(jù)來描述)和動態(tài)特征(對象所表現(xiàn)出來的行為或具有的功能)。比如,張三是現(xiàn)實世界中一個具體的人,他具有身高、體重(靜態(tài)特征),能夠思考和做運動(動態(tài)特征)。面向對象方法中的對象,是描述系統(tǒng)中某一客觀事物的一個實體,它是構成系統(tǒng)的一個基本單位。對象由一組屬性和一組行為構成。屬性是用來描述對象靜態(tài)特征的數(shù)據(jù)項,而行為是用來描述對象動態(tài)特征的操作序列。類與對象的關系,就像模具與產品之間的關系,一個屬于某類的對象稱為該類的一個實例,比如張三就是人這個類的一個實例,或者是這個類的具體表現(xiàn)。
編輯推薦
《C++程序設計教程:基于案例與實驗驅動》依據(jù)ANSI C++標準,闡述面向對象的程序設計思想,詳細介紹了C++語言本身。書中結合大量實例講解面向對象程序設計的基本概念和方法,并增加了UML類圖的介紹以及STL程序設計的內容,同時配有多種形式的習題,并在附錄中提供了實驗指導書,供學生上機或測驗使用。《C++程序設計教程:基于案例與實驗驅動》的讀者對象是計算機、電子信息類專業(yè)的學生和相關的技術人員?!禖++程序設計教程:基于案例與實驗驅動》特點·將統(tǒng)一建模語言UML融入到每部分學習內容中,講解例題前,用UML類圖對問題進行分析,使讀者掌握用面向對象方法來分析復雜問題,而不僅僅是學習面向對象語法。·選取大量貼近現(xiàn)實事物和現(xiàn)象的例題進行講解,使讀者對程序產生濃厚的興趣,增強學習動力。每章在講述知識點和例題后,通過一個完整的應用實例來鞏固所學知識點。·通過每章形式多樣的課后習題,讓讀者自己動手來編寫C++程序,徹底解決以往“看得懂、不會編”的情況。
圖書封面
評論、評分、閱讀與下載