Innehållsförteckning Översättarens förord förord Kapitel 1 Föremålens utveckling 1 1.1 Grundläggande begrepp 1 1.1.1 Objekt: Egenskap + Beteende 1 1.1.2 Arv: Typrelationer 1 1.1.3 Polymorfism 2 1.1.4 Operationskoncept: Hur ser OOP-programmet ut 3 1.2 Varför C++ efterträder 3 1.2.1 Bättre C 3 1.2.2 Anta en gradvis inlärningsmetod 4 1.2.3 Operativ effektivitet 4 1.2.4 Lättare att uttrycka och förstå systemet 4 1.2.5 "Library" ger dig dubbelt så mycket resultat med halva ansträngningen 4 1.2.6 Felhantering 5 1.2.7 Stor programmering 5 1.3 Metodologi Introduktion 5 1.3.1 Komplexitet 5 1.3.2 Interna principer 6 1.3.3 Externa principer 7 1.3.4 De fem stegen i objektdesign 9 1.3.5 Vad metoden lovar 10 1.3.6 Vad metoden bör erbjuda 10 1.4 Utkast: Minimalt tillvägagångssätt 12 1.4.1 Förkunskapskrav 13 1.4.2 Högkoncept 14 1.4.3 Behandling 14 1.4.4 Strukturering 14 1.4.5 Utveckling 16 1.4.6 Omskrivning 17 1.4.7 Logik 17 1.5 Andra metoder 17 1.5.1 Booch 18 1.5.2 Ansvarsdriven design (RDD) 19 1.5.3 Objektmodelleringstekniker (OMT) 19 1.6 Strategier för övergången till OOP 19 1.6.1 Steg för steg in i OOP 19 1.6.2 Ledningshinder 20 1.7 Sammanfattning 21 Kapitel 2 Dataabstraktion 22 2.1 Deklarationer och definitioner 22 2.2 Ett fickbibliotek C 23 2.3 Att sätta ihop det: Projektskapande verktyg 29 2.4 Vad är onormalt 29 2.5 Grundläggande objekt 30 2.6 Vad är Objekt 34 2.7 Abstrakta datatyper 35 2.8 Objektdetaljer 35 2.9 Header-fil formulär 36 2.10 Nästlad struktur 37 2.11 Sammanfattning 41 2.12 Övning 41 Kapitel 3 Dold implementering 42 3.1 Inställning av gränser 42 3.2 Åtkomstkontroll i C++ 42 3.3 Youyuan 44 3.3.1 Nästlad vän 45 3.3.2 Är det rent 48 3.4 Objektlayout 48 3.5 Klass 48 3.5.1 Modifierar Stash 50 med åtkomstkontroll 3.5.2 Modifierar Stack 51 med åtkomstkontroll 3.6 Hantera klass 51 3.6.1 Synlig implementering Avsnitt 51 3.6.2 Minskande dubblettkompilering 52 3.7 Sammanfattning 54 3.8 Övning 54 Kapitel 4 Initialisering och rensning 55 4.1 Säkerställande av initialisering med konstruktörer 55 4.2 Användning av destruktorer för att säkerställa klarering 56 4.3 Klar definition Block 58 4.3.1 för Loop 59 4.3.2 Utrymmesallokering 60 4.4 Stash 61 med konstruktörer och destruktörer 4.5 Stapel 63 med konstruktörer och destruktorer 4.6 Samlingsinitiering 65 4.7 Standardkonstruktörer 67 4.8 Sammanfattning 68 4.9 Övning 68 Kapitel 5 Funktionsöverbelastning och standardparametrar 69 5.1 Räckviddekomposition 69 5.1.1 Överbelastning av 70 med returvärdet 5.1.2 Säkerhetstyp Anslutning 70 5.2 Exempel på överbelastning 71 5.3 Standardparametrar 74 5.4 Sammanfattning 81 5.5 Övning 82 Kapitel 6 Introduktion till in- och utflöden 83 6.1 Varför använda in- och utgångsströmmar 83 6.2 Lösning av in- och utgångsflödesproblem 86 6.2.1 Förstå operatörsöverbelastning i förväg 86 6.2.2 Insatser och utdragare 87 6.2.3 Vanlig användning 88 6.2.4 Input 90 för rader 6.3 Filin- och utmatningsströmmar 91 6.4 In- och utgångsflödesbuffring 93 6.5 Att hitta 94 i in-/utgångsströmmen 6,6 strstreams 96 6.6.1 Lagring tilldelad användare 96 6.6.2 Automatisk lagringsallokering 98 6.7 Formatering av utdataströmmen 100 6.7.1 Intern formatering av data 101 6.7.2 Exempel 102 6.8 Formateringsmanipulatorer 106 6.9 Att skapa manipulatörer 108 6.10 In-/utgångsström exempel 111 6.10.1 Kodgenerering 111 6.10.2 En enkel datapost 117 6.11 Sammanfattning 123 6.12 Övning 123 Kapitel 7 Konstanter 124 7.1 Värdesubstitut för 124 7.1.1 const 124 i headerfilen 7.1.2 Säkerhet för konst 125 7.1.3 Samling 126 7.1.4 Skillnader från C-språket 126 7.2 Pointer 127 7.2.1 Pekar på konst 127 7.2.2 Konstitution 127 7.2.3 Tilldelning och typkontroller 128 7.3 Funktionsparametrar och avkastningsvärden 128 7.3.1 Godkännande av konstvärde 128 7.3.2 Avkastning på konstingvärde 129 7.3.3 Passer- och återvändarstil 131 7.4 Klass 133 7.4.1 Const och enum 133 i klass 7.4.2 Konstanter i klasser under sammanställning 134 7.4.3 Const-objekt och medlemsfunktioner 136 7.4.4 Skrivskyddad lagringskapacitet 139 7.5 Volatiles 140 7.6 Sammanfattning 141 7.7 Övning 141 Kapitel 8 Inline-funktioner 142 8.1 Defekter i preprocessor 142 8.2 Inline-funktioner 144 8.2.1 Inline-funktioner inom klass 145 8.2.2 Åtkomstfunktion 146 8.3 Inline-funktioner och kompilatorer 150 8.3.1 Begränsningar 150 8.3.2 Tilldelningsorder 150 8.3.3 Döljbeteende hos konstruktörer och destruktorer 151 8.4 Minska förvirring 152 8.5 Egenskaper hos förprocessorer 153 8.6 Förbättrad felkontroll 154 8.7 Sammanfattning 155 8.8 Övning 155 Kapitel 9 Namngivningskontroll 157 9.1 Från statiska medlemmar år 157 9.1.1 Statiska variabler inuti funktioner 157 9.1.2 Styranslutning 160 9.1.3 Annan lagringstyp 161 9.2 Namnrymd 161 9.2.1 Generera ett namnrymd 162 9.2.2 Användning av namnrymder 163 9,3 statiska medlemmar i C++ 166 9.3.1 Definition av lagring för statiska datamedlemmar 166 9.3.2 Nästlade och lokala klasser 168 9.3.3 Statiska medlemsfunktioner 169 9.4 Beroenden av statisk initialisering 171 9.5 Konverteringsanslutningsspecifikation 174 9.6 Sammanfattning 174 9.7 Övning 174 Kapitel 10 Referenser och kopiering av konstruktörer 176 10.1 pekare i C++ 176 10.2 Referenser 176 i C++ 10.2.1 Referenser i funktioner 177 10.2.2 Riktlinjer för parameteröverföring 178 10.3 Kopierande konstruktörer 179 10.3.1 Passerar och återvänder 179 efter passervärde 10.3.2 Kopieringskonstruktörer 182 10.3.3 Standardkopikonstruktör 187 10.3.4 Val av kopieringskonstruktörmetoder 188 10.4 Tips till medlemmarna
C 编程思想.part01.rar
(1 MB, Antal nedladdningar: 5)
C 编程思想.part02.rar
(1 MB, Antal nedladdningar: 3)
C 编程思想.part03.rar
(1 MB, Antal nedladdningar: 1)
C 编程思想.part04.rar
(1 MB, Antal nedladdningar: 1)
C 编程思想.part05.rar
(1 MB, Antal nedladdningar: 1)
C 编程思想.part06.rar
(1 MB, Antal nedladdningar: 1)
C 编程思想.part07.rar
(1 MB, Antal nedladdningar: 1)
C 编程思想.part08.rar
(1 MB, Antal nedladdningar: 1)
C 编程思想.part09.rar
(1 MB, Antal nedladdningar: 1)
C 编程思想.part10.rar
(1 MB, Antal nedladdningar: 2)
C 编程思想.part11.rar
(747.02 KB, Antal nedladdningar: 1)
|