『壹』 求C++ 網路編程最好的書籍 謝謝了
學習編程基礎也很重要的,路要一步一步地走。不要老是想到看一本書就成為高手。我給你推薦一些書吧,你可以選一些看。其中很多都是經典之作。C++是以C為基礎的,所以你最好看一下C語言,網路方面,《計算機網路》和《TCP/IP詳解》是必看的。望採納。
1、演算法
計算機程序設計藝術-------Donald.E.Knuth----------演算法「倚天屠龍」雙劍
演算法導論-----------------Thomas H. Cormen--------演算法「倚天屠龍」雙劍
離散數學及其應用----------Kenneth H.Rosen
具體數學—計算機科學基礎--------Donald.E.Knuth
2、數據結構
數據結構 C++
數據結構演算法與應用
3、C語言
C程序設計語言(第2版·新版)---C語言「倚天屠龍雙劍」---Brian W.Kernighan「C語言之父」
C Primer Plus中文版(第五版)--------C語言「倚天屠龍雙劍」---Stephen Prata
C程序設計(第三版)---------------------------譚浩強
C語言大全(第四版)---------------------------HERBERT SCHILDT
C語言介面與實現:創建可重用軟體的技術-------------DAVID R.HANSON
C語言參考手冊(原書第5版)--------------------------Samuel P.Harbison
C程序設計教程---------------------------------H.M.Deitel/P.J.Deitel
C陷阱與缺陷-----------------------------------Andrew Koenig
5、C++
C++程序設計語言(特別版)---c++八大金剛----Bjarne Stroustrup「C++之父」
C++ Primer (第3版)中文版----c++八大金剛---Stanley B.Lippman
C++ Primer (第4版)中文版----c++八大金剛---Stanley B.Lippman
C++標准程序庫—自修教程與參考手冊--c++八大金剛--Nicolai M.Josuttis
C++語言的設計和演化-----c++八大金剛----Bjarne Stroustrup「C++之父」
深度探索C++對象模型---c++八大金剛----Stanley B.Lippman
Essential C++中文版---c++八大金剛---Stanley B.Lippman
Effective C++中文版 2nd Edition-----c++八大金剛------Scott Meyers
More Effective C++中文版----c++八大金剛------Scott Meyers
C++編程思想(第2版) 第1卷:標准C++導引--------Bruce Eckel
C++編程思想(第2版)第2卷:實用編程技術 --------Bruce Eckel
C++程序設計--------------------------譚浩強
C++ 程序設計教程(第2版)--------------錢能
C++ Primer Plus(第五版)中文版---Stephen Prata
6、操作系統
深入理解計算機系統(修訂版)-------RANDAL E.BRYANT
計算機操作系統(第六版)
7、編譯原理
跟我一起寫makefile
《編譯原理技術和工具》------- Alfred ------- 龍書
《現代編譯原理-C語言描述》 ----------- Andrew W. Appel ----------- 虎書
《高級編譯器設計與實現》 ----------- Steven S.Muchnick ----------- 鯨書
8、網路
計算機網路第四版中文版-----------Andrew S.Tanenbaum -------網路編程三劍客
TCP/IP詳解3卷本--------------------Richard Stevens----網路編程三劍客
UNIX網路編程2卷本--------------------Richard Stevens----網路編程三劍客
用TCP/IP進行網際互聯-----------Douglas E. Comer
高級TCP/IP編程-------------------Jon C. Snader
C++網路編程-----------------------Douglas Schmidt
UNIX環境高級編程(第2版)--------------------Richard Stevens
9、Linux
Linux內核設計與實現
Linux內核完全注釋
LINUX內核分析及編程
『貳』 C++面向對象程序設計的圖書一
書名:C++面向對象程序設計
叢 書 名:21世紀高等學校計算機規劃教材——精品系列
標准書號:ISBN 978-7-115-22780-5
作者:陳維興 陳昕 編著
譯者:--
開本:16 開
印張:19.75
字數:521 千字
頁數:309 頁
裝幀:平裝
版次:第1版第1次
初版時間:2010年10月
本 印 次:2010年10月
首 印 數:-- 冊
定價:33.00 元 本書介紹了C++面向對象程序設計的基本知識和編程方法,以及C++面向對象的基本特徵。針對初學者的特點, 本書力求通過大量實例、習題和上機實驗題,以通俗易懂的語言講解復雜的概念和方法,使讀者能深刻理解和領會面向對象程序設計的特點和風格,掌握其方法和要領,以期幫助讀者盡快地邁入面向對象程序設計的大門。
本書以應用為目的,大力加強實踐環節,注重培養應用能力,適合作為高等院校各專業學生學習C++程序設計課程的教材,也可作為C++語言自學者的參考用書。 第1章面向對象方法概述1
1.1什麼是面向過程程序設計方法1
1.1.1面向過程程序設計方法概述1
1.1.2面向過程程序設計方法的局限性3
1.2什麼是面向對象程序設計方法4
1.2.1面向對象程序設計方法的基本概念4
1.2.2面向對象程序設計方法的基本特徵7
1.2.3面向對象程序設計方法的主要優點10
1.3面向對象程序設計的語言11
1.3.1面向對象程序設計語言的發展概況11
1.3.2幾種典型的面向對象程序設計語言12
習題12
第2章C++的初步知識14
2.1C++的發展和特點14
2.1.1C++的發展14
2.1.2C++的特點15
2.2C++源程序的構成15
2.2.1一個簡單的C++程序15
2.2.2C++程序的結構特性18
2.3C++程序的編輯、編譯、連接和運行18
2.4C++對C的擴充19
2.4.1注釋19
2.4.2C++的輸入輸出20
2.4.3靈活的局部變數說明23
2.4.4const修飾符23
2.4.5函數原型24
2.4.6內聯函數27
2.4.7帶有默認參數的函數28
2.4.8函數的重載29
2.4.9作用域運算符「∷」31
2.4.10強制類型轉換32
2.4.11運算符new和delete32
2.4.12引用35
實驗40
習題41
第3章類和對象46
3.1類的構成46
3.1.1從結構體到類46
3.1.2類的構成47
3.2成員函數的定義49
3.2.1普通成員函數的定義49
3.2.2內聯成員函數的定義51
3.3對象的定義和使用52
3.3.1類與對象的關系52
3.3.2對象的定義52
3.3.3對象中成員的訪問53
3.3.4類的作用域和類成員的訪問屬性55
3.4構造函數與析構函數56
3.4.1對象的初始化和構造函數56
3.4.2用成員初始化表對數據成員初始化60
3.4.3析構函數61
3.4.4默認的構造函數和默認的析構函數64
3.4.5帶默認參數的構造函數66
3.4.6構造函數的重載67
3.5對象的賦值與復制68
3.5.1對象賦值語句68
3.5.2拷貝構造函數70
3.6自引用指針this75
3.7C++的string類77
3.8應用舉例79
實驗80
習題82
第4章類和對象的進一步討論87
4.1對象數組與對象指針87
4.1.1對象數組87
4.1.2對象指針90
4.2向函數傳遞對象92
4.2.1使用對象作為函數參數92
4.2.2使用對象褲猜指針作為函數參數93
4.2.3使用對象引用作為函數參數93
4.3靜態成員94
4.3.1靜態數據成員95
4.3.2靜態成員函數99
4.4友元103
4.4.1友元函數103
4.4.2友元類106
4.5類的組合108
4.6共享數據的保護111
4.6.1常對象111
4.6.2常對象成員112
4.7C++的多文件程序114
4.8應用舉例胡慎型116
實驗孝簡119
習題121
第5章繼承與派生126
5.1繼承與派生的基本概念126
5.1.1為什麼要使用繼承126
5.1.2派生類的聲明128
5.1.3基類成員在派生類中的訪問屬性129
5.1.4派生類對基類成員的訪問規則130
5.2派生類的構造函數和析構函數136
5.2.1派生類構造函數和析構函數的調用順序136
5.2.2派生類構造函數和析構函數的構造規則137
5.3在派生類中顯式訪問基類成員141
5.4多重繼承與虛基類142
5.4.1聲明多重繼承派生類的方法143
5.4.2多重繼承派生類的構造函數與析構函數145
5.4.3虛基類148
5.5應用舉例153
實驗155
習題158
第6章多態性與虛函數163
6.1多態性概述163
6.2基類與派生類對象之間的賦值兼容關系163
6.3虛函數166
6.3.1虛函數的引入166
6.3.2虛函數的作用和定義168
6.3.3虛析構函數173
6.4純虛函數和抽象類175
6.4.1純虛函數175
6.4.2抽象類176
6.5應用舉例177
實驗179
習題180
第7章運算符重載183
7.1運算符重載概述183
7.2運算符重載函數作為類的友元函數和成員函數186
7.2.1運算符重載函數作為類的友元函數186
7.2.2運算符重載函數作為類的成員函數190
7.2.3運算符重載應該注意的幾個問題193
7.3前置運算符和後置運算符的重載196
7.4重載插入運算符和提取運算符199
7.4.1重載插入運算符「<<」199
7.4.2重載提取運算符「>>」201
7.5不同類型數據間的轉換203
7.5.1系統預定義類型間的轉換203
7.5.2類類型與系統預定義類型間的轉換204
7.6應用舉例208
實驗211
習題212
第8章模板216
8.1模板的概念216
8.2函數模板217
8.2.1函數模板的聲明217
8.2.2函數模板的使用217
8.3類模板221
8.4應用舉例227
實驗229
習題230
第9章C++的輸入和輸出233
9.1C++流的概述233
9.1.1C++的輸入/輸出流233
9.1.2預定義的流對象234
9.1.3輸入輸出流的成員函數235
9.2預定義類型輸入輸出的格式控制237
9.2.1用流成員函數進行輸入輸出格式控制237
9.2.2使用預定義的操縱符進行輸入輸出格式控制241
9.2.3使用用戶自定義的操縱符進行輸入輸出格式控制244
9.3文件的輸入輸出245
9.3.1文件的概述245
9.3.2 文件的打開與關閉246
9.3.3文本文件的讀寫249
9.3.4二進制文件的讀寫252
9.4應用舉例257
實驗259
習題261
第10章異常處理和命名空間264
10.1異常處理264
10.1.1異常處理概述264
10.1.2異常處理的方法265
10.2命名空間和頭文件命名規則269
10.2.1命名空間269
10.2.2頭文件命名規則271
10.3應用舉例272
實驗273
習題274
第11章綜合設計與實現276
11.1需求分析276
11.2系統分析276
11.2.1基本信息類的屬性和操作276
11.2.2各種學生類的屬性和操作277
11.2.3系統管理類的操作277
11.3系統設計278
11.3.1基類和派生類的設計278
11.3.2系統管理類的設計280
11.4系統實現282
實驗291
習題291
附錄C++上機操作介紹292
附錄AVisual C++ 6.0 的開發環境292
附錄B建立和運行單文件程序295
附錄C建立和運行多文件程序303
『叄』 8.1.1什麼是面向對象的程序設計.ppt
面向對象
面向對象(Object Oriented,OO)是當前計算機界關心的重點,它是90年代軟體開發方法的主流。面向對象的概念和應用已超越了程序設計和軟體開發,擴展到很寬的范圍。如資料庫系統、互動式界面、應用結構、應用平台、分布式系統、網路管理結構、CAD技術、人工智慧等領域。
談到面向對象,這方面的文章非常多。但是,明確地給出對象的定義或說明對象的定義的非常少——至少我現在還沒有發現。其初,「面向對象」是專指在程序設計中採用封裝、繼承、抽象等設計方法。可是,這個定義顯然不能再適合現在情況。面向對象的思想已經涉及到軟體開發的各個方面。如,面向對象的分析(OOA,Object Oriented Analysis),面向對象的設計(OOD,Object Oriented Design)、以及我們經常說的面向對象的編程實現(OOP,Object Oriented Programming)。許多有關面向對象的文章都只是講述在面向對象的開發中所需要注意的問題或所採用的比較好的設計方法。看這些文章只有真正懂得什麼是對象,什麼是面向對象,才能最大程度地對自己有所裨益。這一點,恐怕對初學者甚至是從事相關工作多年的人員也會對它們的概念模糊不清。
面向對象是當前計算機界關心的重點,它是90年代軟體開發方法的主流。面向對象的概念和應用已超越了程序設計和軟體開發,擴展到很寬的范圍。如資料庫系統、互動式界面、應用結構、應用平台、分布式系統、網路管理結構、CAD技術、人工智慧等領域。
一、傳統開發方法存在問題
1.軟體重用性差
重用性是指同一事物不經修改或稍加修改就可多次重復使用的性質。軟體重用性是軟體工程追求的目標之一。
2.軟體可維護性差
軟體工程強調軟體的可維護性,強調文檔資料的重要性,規定最終的軟體產品應該由完整、一致的配置成分組成。在軟體開發過程中,始終強調軟體的可讀性、可修改性和可測試性是軟體的重要的質量指標。實踐證明,用傳統方法開發出來的軟體,維護時其費用和成本仍然很高,其原因是可修改性差,維護困難,導致可維護性差。
3.開發出的軟體不能滿足用戶需要
用傳統的結構化方法開發大型軟體系統涉及各種不同領域的知識,在開發需求模糊或需求動態變化的系統時,所開發出的軟體系統往往不能真正滿足用戶的需要。
用結構化方法開發的軟體,其穩定性、可修改性和可重用性都比較差,這是因為結構化方法的本質是功能分解,從代表目標系統整體功能的單個處理著手,自頂向下不斷把復雜的處理分解為子處理,這樣一層一層的分解下去,直到僅剩下若干個容易實現的子處理功能為止,然後用相應的工具來描述各個最低層的處理。因此,結構化方法是圍繞實現處理功能的「過程」來構造系統的。然而,用戶需求的變化大部分是針對功能的,因此,這種變化對於基於過程的設計來說是災難性的。用這種方法設計出來的系統結構常常是不穩定的 ,用戶需求的變化往往造成系統結構的較大變化,從而需要花費很大代價才能實現這種變化。
二、面向對象的基本概念
(1)對象。
對象是人們要進行研究的任何事物,從最簡單的整數到復雜的飛機等均可看作對象,它不僅能表示具體的事物,還能表示抽象的規則、計劃或事件。
(2)對象的狀態和行為。
對象具有狀態,一個對象用數據值來描述它的狀態。
對象還有操作,用於改變對象的狀態,對象及其操作就是對象的行為。
對象實現了數據和操作的結合,使數據和操作封裝於對象的統一體中
(3)類。
具有相同或相似性質的對象的抽象就是類。因此,對象的抽象是類,類的具體化就是對象,也可以說類的實例是對象。
類具有屬性,它是對象的狀態的抽象,用數據結構來描述類的屬性。
類具有操作,它是對象的行為的抽象,用操作名和實現該操作的方法來描述。
(4)類的結構。
在客觀世界中有若干類,這些類之間有一定的結構關系。通常有兩種主要的結構關系,即一般--具體結構關系,整體--部分結構關系。
①一般——具體結構稱為分類結構,也可以說是「或」關系,或者是「is a」關系。
②整體——部分結構稱為組裝結構,它們之間的關系是一種「與」關系,或者是「has a」關系。
(5)消息和方法。
對象之間進行通信的結構叫做消息。在對象的操作中,當一個消息發送給某個對象時,消息包含接收對象去執行某種操作的信息。發送一條消息至少要包括說明接受消息的對象名、發送給該對象的消息名(即對象名、方法名)。一般還要對參數加以說明,參數可以是認識該消息的對象所知道的變數名,或者是所有對象都知道的全局變數名。
類中操作的實現過程叫做方法,一個方法有方法名、參數、方法體。消息傳遞如圖10-1所示。
二、面向對象的特徵
(1)對象唯一性。
每個對象都有自身唯一的標識,通過這種標識,可找到相應的對象。在對象的整個生命期中,它的標識都不改變,不同的對象不能有相同的標識。
(2)分類性。
分類性是指將具有一致的數據結構(屬性)和行為(操作)的對象抽象成類。一個類就是這樣一種抽象,它反映了與應用有關的重要性質,而忽略其他一些無關內容。任何類的劃分都是主觀的,但必須與具體的應用有關。
(3)繼承性。
繼承性是子類自動共享父類數據結構和方法的機制,這是類之間的一種關系。在定義和實現一個類的時候,可以在一個已經存在的類的基礎之上來進行,把這個已經存在的類所定義的內容作為自己的內容,並加入若干新的內容。
繼承性是面向對象程序設計語言不同於其它語言的最重要的特點,是其他語言所沒有的。
在類層次中,子類只繼承一個父類的數據結構和方法,則稱為單重繼承。
在類層次中,子類繼承了多個父類的數據結構和方法,則稱為多重繼承。
在軟體開發中,類的繼承性使所建立的軟體具有開放性、可擴充性,這是信息組織與分類的行之有效的方法,它簡化了對象、類的創建工作量,增加了代碼的可重性。
採用繼承性,提供了類的規范的等級結構。通過類的繼承關系,使公共的特性能夠共享,提高了軟體的重用性。
(4)多態性(多形性)
多態性使指相同的操作或函數、過程可作用於多種類型的對象上並獲得不同的結果。不同的對象,收到同一消息可以產生不同的結果,這種現象稱為多態性。
多態性允許每個對象以適合自身的方式去響應共同的消息。
多態性增強了軟體的靈活性和重用性。
對象,強調物體屬性, 比如實現邏輯 物體A 移動到B點,
對象思想就是要你想像 你吧A 看成什麼 你可以吧它看成車, 用車輪的方式(方法)讓它走動, 可以看成托運(方法)的方式拉過去。
面向對象的方法 是一類物體的屬性 所具備的 行為,理論上 可以參照面向過程的函數去理解
兒面向過程, 我不關心你用什麼方式,看成什麼 ,管你是推,是拽,只要你運過來就行 相對而言 沒有針對性
樓主可以 設想一下網路游戲, 你玩的游戲 的怪物, 是分種類的, 他們都是自動的東西, 沒人去手動生成, 一類怪物 有一類招數和樣子, 行為屬性, 這就是對象思想
『肆』 《面向對象程序設計》高手進~~~~~~~~~~~~!!
1.三種派生方式:private public protected
private:只允許在派生類的成員函數中訪問基類原有的非私有成員
public:基類中的所有公有成員和保護成員在派生類中認為公有成員和保護 成員,可以通過派生類的成員函數訪問基類中所有非私有成員。還可通過派生類的對象直接訪問基類中的公有成員。
protected:基類中的所有公有成員和保護成員都成了保護成員,只允許派生類的成員函數及派生類的派生類中的成員函數訪問基類的非私有成員,不能通過派生類的對象直接訪問基類的任何成員。
2.派生類不能訪問基類的私有成員。無論那種派生方式都繼承了基類的所有成員,當然也包括私有成員,可以通過調用公有成員函數來訪問和設置私有成員。
3.保護成員的特性:能被該類和繼承類的成員函數訪問。
(基類中的保護成員被公有私有方式繼承後的特性看第一題)
4.派生類的構造函數執行之前必先調用基類的構造函數,建立基類的一個對象,當對象生命周期完結之時,先調用派生類的析構函數釋放其資源,而後調用基類的析構函數。
5.基類中的構造函數和析構函數都不能被繼承。
派生類的構造函數:派生類中的新的或者改造來的成員則需要自己的構造函數,從基類中繼承來的則調用基類的構造函數。其中分隱式調用和顯式調用。析構函數需派生類中重新構造。
6.多重繼承:一個派生類由多個基類派生而來叫做多重繼承。多重繼承時,首先調用所有基類的構造函數,多個基類的構造函數的調用順序按照定義派生類時各基類的排序確定,而後調用派生類的構造函數,析構函數為此逆序。
1.調用函數模板時產生一個實例——模板函數;類模板聲明時所給出的已經確定了數據類型的類成為模板類,也就是說模板類是類模板的實例。
2.先調用模板函數,將具體的參數數據類型替換生成一個具體的函數使用。
『伍』 求java編程全套自學視頻
《視頻-Java程序設計》網路網盤資源免費下載鏈接:https://pan..com/s/15c5QsBsFV9z-TsWntNZ3Tw
視頻-Java程序設計|視頻《J2SE基礎編程》【徐彤】|視頻《編程方法學》【斯坦福大學-CS106A】Java28講|教程-Java編程思想PDF|教程-Java編程案例PDF|源碼-Java程序設計|教程-Java開發技術PDF|課件-Java程序設計PPT|教程-Java入門學習PDF|視頻《Java視頻教程》|資料-Java程序設計|最新java ee api幫助文檔 chm格式.chm|資料-Java程序設計.rar|實驗指導書 面向對象程序設計(Java)09信管.doc|實驗指導書 Java面向對象程序設計及應用1_12.doc