Ammeraal, L. (1999) Basiscursus C++, 3de druk, Schoonhoven: Academic Service

Om de programma's van dit boek te verkrijgen, kunt u de file bascpp.zip ophalen door hier te klikken.

Inhoud

1 Inleiding 1
1.1 Eerste kennismaking met C++ 1
1.2 Het werken met tekst 6
1.3 Namen en gereserveerde woorden 9
1.4 Constanten 9
1.5 Commentaar 14
1.6 Samenvatting 14
Opgaven 14

2 Expressies en statements 17
2.1 Rekenkundige bewerkingen 17
2.2 Types, variabelen en toekenningen 20
2.3 Relationele en logische operatoren 24
2.4 Compound-statements en if-statements 25
2.5 Iteratieve statements 29
2.6 Het break- en het switch-statement 34
2.7 Samenvatting 36
Opgaven 36

3 Meer operatoren 39
3.1 Conditionele expressies 39
3.2 De komma-operator 40
3.3 Bitmanipulatie 44
3.4 Associativiteit 48
3.5 Prioriteit van operatoren 50
3.6 Aritmetische conversies; de cast 52
3.7 Samenvatting 55
Opgaven 56

4 Functies 59
4.1 De definitie en de declaratie van een functie 59
4.2 Overloading 64
4.3 Default-parameters 65
4.4 Waarde- en referentieparameters 66
4.5 Referentieparameters en const 68
4.6 Modulair programmeren 70
4.7 Inline-functies en macro's 72
4.8 Conditionele compilatie 73
4.9 Samenvatting 74
Opgaven 74

5 Arrays en pointers 77
5.1 Eenvoudige arrays 77
5.2 Pointergebruik met new en delete; typedef 80
5.3 Pointers en arrays; nogmaals new en delete 84
5.4 Pointerparameters en eenvoudige variabelen 87
5.5 Pointerparameters en arrays 89
5.6 Wat moeilijker aspecten van arrays 91
5.7 Samenvatting 93
Opgaven 94

6 Strings 95
6.1 Constructoren voor strings 95
6.2 C-stijl-strings en conversie 97
6.3 Toekenningen aan strings 100
6.4 Lengte opvragen en strings kopiëren 101
6.5 Het vergelijken van strings 102
6.6 Toevoegen, tussenvoegen en samenvoegen 103
6.7 Zoeken, substrings en verwisselen 104
6.8 Invoer en uitvoer 105
6.9 Programma-argumenten (met C-stijl-strings) 106
6.10 Formaatconversie in het geheugen 107
6.11 Samenvatting 108
Opgaven 109

7 Klassen 111
7.1 Het woord struct 111
7.2 Een klasse met lidfuncties 112
7.3 Lidfuncties definiëren buiten de klasse 116
7.4 Het begrip constructor 117
7.5 Het toevoegen van een destructor 118
7.6 Zelf operatoren definiëren 121
7.7 Het kopiëren van klasseobjecten 123
7.8 Conversie en het woord explicit 128
7.9 Overerving 130
7.10 Exceptieafhandeling 133
7.11 Samenvatting 138
Opgaven 138

8 Invoer en uitvoer 141
8.1 Standaard-'streams' 141
8.2 Uitvoer 142
8.3 Invoer 146
8.4 Files en streams 151
8.5 Random access; statusbits 155
8.6 Samenvatting 158
Opgaven 158

9 Templates 161
9.1 Functietemplates 161
9.2 Klassetemplates 163
9.3 Samenvatting 167
Opgaven 168

10 Iets over STL 169
10.1 Wat is STL? 169
10.2 Vector-containers: lidfuncties en algoritmen 170
10.3 Andere sequence-containers: deque en list 175
10.4 Iteratorcategorieën 178
10.5 Speciale lidfuncties voor lists 179
10.6 Sets 183
10.7 Maps en de klassetemplate pair 184
10.8 Niet-muterende algoritmen 187
10.9 Muterende algoritmen 191
10.10 Algoritmen in verband met sorteren 196
10.11 Samenvatting 201
Opgaven 201

11 Enige standaardfuncties 205
11.1 Karakters classificeren: (cctype) 205
11.2 Floating-point-precisie: (cfloat) 206
11.3 Maximum integer, etc.: (climits) 207
11.4 Wiskundige functies: (cmath) 208
11.5 Bijzondere types: (cstddef) 208
11.6 C-stijl-invoer en -uitvoer: (cstdio) 209
11.7 Diversen: (cstdlib) 216
11.8 Stringfuncties: (string) 218
11.9 Tijd en datum: (ctime) 220
11.10 Samenvatting 224
Opgaven 224

Literatuur 225

Register 227


Back to list of recent books by the same author