從新手到高手C++全方位學習視頻 簡體中文 普通話 DVD 《從新手到高手C++全方位學習》總結了十幾本C++圖書及教材的優點,擯棄了它們語言拖沓、層次結構混亂等缺陷,從零開始、由淺入深、層層遞進、細緻而又詳盡地講解C++這門大型編程語言。《從新手到高手C++全方位學習》知識系統全面,擁有字典般的容量,可隨用隨查,涵蓋指針、面向對象、操作符重載、流、命名空問、模板、異常處理、宏等主流C++開發技術。為了使讀者能夠活學活用,《從新手到高手C++全方位學習》針對重要的概念精心設計了438個實用範例,囊括大量經驗和技巧,即使已從事C++工作多年的朋友,也能從中汲取新的養料。《從新手到高手C++全方位學習》適合於從未學習過任何編程語言的新手,以及學習C++多年,仍舊不能融會貫通的讀者,對於正在使用C++進行開發的程序員也有很好的參考價值。 這裡,我將原始光盤中的“視頻教程”和“源代碼”分開發布,以方便各位按需下載。 光盤提供的視頻教程,包含了第1章到第17章的內容,網上有18、19章的教程,這個光盤沒有包括。 目錄: 第1章初識C++ 1.1C++簡介 1.2C++與C的區別 1.3學習C++之前需要先學C嗎 1.4C++與其他語言的區別 1.5C++的版本以及安裝問題 第2章做一個最簡短的C++程序 2.1簡單的屏幕輸出小程序 2.2輸出語句的使用 2.3std::介紹 2.4iostream與iostream.h的區別 2.5重名問題 2.6註釋 第3章初步了解函數 3.1一個簡單的函數 3.2函數的傳參 3.3函數的返回值.參數與變量 3.4函數的聲明與定義 3.5局部變量 3.6全局變量 第4章C++數據類型 4.1變量的定義 4.2將變量及數據存儲在內存中 4.3布爾型變量 4.4字符型變量 4.5wchar_t雙字節型變量 4.6整型概述 4.7整型變量的定義 4.8浮點型變量 4.9常量 4.10枚舉型常量 第5章if語句與邏輯運算符 5.1語句的定義 5.2塊的定義 5.3表達式的定義 5.4運算符的定義 5.4.1賦值運算符的定義 5.4.2數學運算符的定義 5.4.3賦值運算符與數學運算符的聯合 5.5自加與自減 5.5.1前置 5.5.2後置 5.6表達式的優先級 5.7關係運算符 5.8if語句 5.8.1else語句 5.8.2elseif語句 5.8.3if語句的嵌套 5.9邏輯運算符及其使用 5.9.1邏輯“與” 5.9.2邏輯“或” 5.9.3邏輯“非” 5.9.4邏輯運算符的優先級 5.9.5運算式的真假關係 5.10三目運算符 5.10.1三目運算符的優先問題 5.10.2三目運算符的使用問題 5.10.3三目運算符的型別問題 5.10.4三目運算符在字符型變量中的使用 5.11複雜嵌套的if語句 第6章面向對象 6.1面向對象程序語言的主要特徵 6.2類.對象和成員 6.3類.對象和成員的使用方法及區別 6.3.1聲明一個類 6.3.2命名習慣 6.3.3定義一個對象 6.3.4類與對象的區別 6.3.5對象與成員的關係 6.3.6不要給類賦值 6.3.7對像只能調用類中存在的成員 6.4公有 6.5私有 6.6成員函數的聲明和定義 6.7為什麼將成員函數的聲明和定義分開 6.7.1普通內聯函數 6.7.2成員內聯函數 6.8將類聲明和定義部分保存在頭文件中 6.9const成員函數 6.10構造函數 6.11默認構造函數 6.12析構函數 6.13析構對像數組 第7章循環語句 7.1循環語句的前身——goto語句 7.2慎用goto語句 7.3while語句 7.3.1帶運算符的while語句 7.3.2以字符為條件的while語句 7.3.3限定while循環的次數 7.3.4continue語句 7.3.5break語句 7.3.6永不休止的while循環 7.4do…while循環 7.5for循環 7.5.1靈活的for循環 7.5.2條件為空的for循環 7.5.3執行為空的for循環 7.5.4嵌套的for循環 7.6switch語句 7.6.1switch語句常見錯誤 7.6.2switch的菜單功能 7.7總結 第8章指針 8.1什麼是地址 8.2用指針來保存地址 8.2.1空指針 8.2.2指針與變量類型 8.2.3用指針來訪問值 8.2.4指針地址.指針保存的地址和該地址的值 8.2.5指針對數值的操作 8.2.6更換指針保存的地址 8.3為什麼使用指針 8.3.1棧和堆 8.3.2用指針創建堆中空間 8.3.3用指針刪除堆中空間 8.4動態內存 8.4.1內存洩漏 8.4.2在堆中創建對象 8.4.3在堆中刪除對象 8.4.4訪問堆中的數據成員 8.4.5在構造函數中開闢內存空間 8.4.6對像在棧與堆中的不同 8.5this指針 8.6指針的常見錯誤 8.7指針運算 8.7.1指針的加減運算 8.7.2指針的賦值運算 8.7.3指針的相減運算 8.7.4指針的比較運算 8.8指針 8.8.1常量指針 8.8.2指向常量的指針 8.8.3指向常量的常指針 8.9總結 第9章引用 9.1什麼是引用 9.1.1引用的地址 9.1.2引用就是別名常量 9.1.3引用對象 9.1.4空引用 9.2函數的參數傳遞 9.2.1通過值來傳遞函數參數 9.2.2通過指針來傳遞函數參數 9.2.3通過引用來傳遞函數參數 9.2.4讓函數返回多個值 9.3傳遞對象 9.3.1用值來傳遞對象 9.3.2使用指針來傳遞對象 9.3.3使用const指針來傳遞對象 9.3.4使用引用來傳遞對象 9.3.5到底是使用引用還是指針 9.3.6引用和指針可以一塊用 9.4引用應注意的問題 9.4.1引用容易犯的錯誤 9.4.2引用一個按值返回的堆中對象 9.4.3引用一個按別名返回的堆中對象 9.4.4在哪裡創建,就在哪裡釋放 9.5總結 第10章深入函數 10.1函數重載 10.1.1普通函數的重載 10.1.2成員函數的重載 10.2函數的默認參數 10.3重載構造函數 10.3.1成員變量的初始化 10.3.2成員變量的初始化與構造函數 10.3.3複製構造函數 10.3.4構造函數和new運算符 10.3.5再談默認構造函數 10.4析構函數和delete運算符 10.4.1默認析構函數 10.4.2調用構造函數進行類型轉換 10.5淺層複製構造函數 10.6深層複製構造函數 第11章運算符重載 11.1運算符重載 11.2在成員函數中實現自加 11.3重載前置自加運算符 11.4創建臨時對象 11.5創建無名臨時對象 11.6取消創建臨時對象 11.7重載後置自加運算符 11.8重載加法運算函數operator+ 11.9重載賦值運算函數operator= 11.10轉換類型運算符 11.10.1溫習調用構造函數實現的類型轉換 11.10.2通過構造函數將變量轉換為一個對象的成員變量 11.10.3通過operator關鍵字進行轉換 11.11什麼可以被重載,什麼不可以 第12章繼承 12.1什麼是繼承和派生 12.1.1複雜的繼承和派生 12.1.2繼承和派生如何在C++中實現 12.1.3繼承的種類及語法 12.1.4單一繼承 12.2公有型.保護型和私有型 12.3訪問權限 12.4多重繼承 12.5繼承的構造與析構 12.6向基類構造函數傳遞參數 12.7繼承和重載的兩義性問題 12.7.1多重繼承容易產生兩義性 12.7.2兩義性在重載時的一些問題 12.7.3兩義性的歸屬問題 12.7.4減少兩義性產生的混淆問題 12.7.5虛基類不會產生兩義性 12.8總結 第13章虛函數 13.1指向對象的指針 13.2虛函數 13.3拳擊遊戲 13.4繼承是否可以實現多態性 13.5在編譯時的靜態聯編 13.6在運行時的靜態聯編 13.7在編譯時的動態聯編 13.8在運行時的動態聯編 13.9調用虛函數 13.9.1在虛函數中調用成員函數 13.9.2三種調用虛函數的方式比較 13.10被繼承的虛函數仍然是虛函數 13.11系統是如何調用虛函數的 13.12在虛函數中使用成員名限定 13.13虛析構函數 第14章數組 14.1數組的基本用法 14.1.1什麼是數組 14.1.2數組元素 14.1.3數組下標越界 14.1.4倒序輸出 14.1.5將數組的下標定義為常量 14.1.6手動操作數組元素 14.1.7數組的初始化 14.2數組的用途 14.2.1求平均考試成績 14.2.2兔子繁殖問題 14.2.3數字排序問題 14.3數組在內存中的分佈 14.4輸出數組名 14.5數組名與函數 14.6傳遞與接收 14.7數組與函數 14.7.1函數傳參實例一——求數組所有元素的和 14.7.2函數傳參實例二——用遞增法查找數據 14.7.3函數傳參實例三——用二分法查找數據 14.7.4函數傳參實例四——判斷數組是否按照順序排列 14.7.5函數傳參實例五——判斷數組排列方式後執行不同的函數 14.8數組在對像中的傳參 14.9數組對象 14.10在數組對像中初始化成員變量 14.11指針數組 14.12枚舉常量與數組.. 14.13多維數組 14.14多維數組的初始化 14.15字符數組 14.16重載數組下標操作符 第15章鍊錶 15.1聲明鍊錶結構 15.2簡單的圖書鍊錶 15.2.1圖書鍊錶 15.2.2類的鍊錶 15.3動態鍊錶 15.3.1動態鍊錶的建立 15.3.2解決輸入字符造成死循環的問題 15.3.3動態鍊錶的顯示 15.3.4動態鍊錶的刪除 15.3.5動態鍊錶的插入 15.3.6鍊錶統計 15.3.7使用鍊錶 15.4完整的動態鍊錶清單 15.5鍊錶使用案例——走迷宮 15.5.1創建Windows應用程序項目 15.5.2創建窗口 15.5.3加載圖片 15.5.4句柄是什麼 15.5.5顯示圖片 15.5.6動畫 15.5.7鍵盤控制人物移動 15.5.8迷宮牆壁 15.5.9走迷宮 15.5.10用鍊錶記錄行走路線 第16章多態性 16.1為什麼要使用多重繼承 16.2在派生類中增加函數 16.3使用多重繼承 16.4多重繼承中初始化構造函數的參數 16.5多個子基類共享一個父基類 16.6虛基類 16.7慎用多重繼承 16.8空的虛函數 16.9抽像類和純虛函數 16.10純虛函數 16.11複雜的抽象結構 第17章類的特殊成員 17.1靜態成員變量 17.2私有靜態成員變量 17.3靜態成員函數 17.4靜態成員的使用 17.5函數指針 17.6函數指針數組 17.7函數指針也可以作為函數的參數 17.8使用typedef簡化函數指針的聲明及定義 17.9類的函數指針 17.10成員函數指針數組 第18章字符串 18.1char型字符串 18.2string型字符串 18.2.1string型字符串的賦值 18.2.2string型字符串的合併 18.2.3string型字符串的部分合併 18.2.4string型字符串的替換 18.2.5string型字符串的複制 18.2.6string型字符串的插入 18.2.7string型字符串的刪除 18.2.8string型字符串的查找 18.2.9string型字符串的比較 18.2.10判斷string型字符串是否為空 18.3字符串的使用 18.3.1swap()交換兩個字符串的內容 18.3.2將string型字符串轉為char型字符串 18.3.3char型字符串與函數 18.3.4函數如何返回字符串 18.4結構體 18.4.1結構體的賦值 18.4.2結構體與函數 18.4.3結構體與string 18.5string數組與函數 18.6流的使用 18.6.1重載輸出運算符 18.7編寫一個String類 18.7.1創建String類 18.7.2創建可自動調節大小的String類字符串對象 18.7.3限制數組越界 18.7.4用複制構造函數實現字符串的賦值功能 18.7.5用重載賦值運算符函數實現真正的字符串賦值功能 18.7.6用重載輸出運算符operator()函數實現字符串的輸入 18.7.8用重載比較運算符實現字符串的比較 18.7.9為String類添加字符串的相加功能 18.7.10為String類添加字符串的+=功能 18.7.11完成後的String類 第19章代碼重用 19.1包含 19.2將String類作為包含類 19.3為book類重載執行相加運算的成員函數 19.4包含對系統造成的消耗 19.5按別名傳遞book對象 19.6包含指向另一個類的指針 19.6.1數據類Date 19.6.2鍊錶類Node 19.6.3標籤類linkelist 19.6.4頭節點類HeadNode 19.6.5尾節點TailNode類 19.6.6中間節點InterNode類 19.6.7InterNode類的構造函數 19.6.8InterNode類的插入函數 19.6.9全部程序 19.7將頭節點.中間節點和尾節點合併為一個節點 19.7.1數據類Date 19.7.2由Date類派生的圖書類Book 19.7.3由Date類派生的藥品類medica 19.7.4創建一個節點類Node 19.7.5用來操作節點類Node的list類 19.7.6list類的getfirst()方法 19.7.7list類的operator[]方法 19.7.8list類的repeat()方法 19.7.9list類的insert()方法 19.7.10list類的find()方法 19.7.11重寫的藥品管理全部程序 19.8利用類的包含來實現代碼重用 19.9私有繼承 19.10什麼時候使用私有繼承,什麼時候使用包含 19.11保護繼承 第20章友元類與嵌套類 20.1友元類 20.2嵌套類 第21章流 21.1流的操作 21.1.1緩衝 21.1.2流和緩衝區 21.1.3標準輸入輸出對象 21.1.4重定向 21.1.5對象代表流 21.2用cout輸出 21.2.1重載運算符operator