Sunteți pe pagina 1din 5

Cuprins

CUPRINS
PARTEA I
CAPITOLUL 1 Noiuni introductive
1.1. Structura general a unui sistem de
calcul . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2. Algoritmi . . . . . . . . . . . . . . . . . . . . . . . .
1.2.1. Noiuni generale . . . . . . . . . . . . . .
1.2.2. Definiii i caracteristici . . . . . . . .
1.2.3. Reprezentarea algorimilor . . . . . . .
1.2.3.1. Reprezentarea prin
scheme logice . . . . . . . . .
1.2.3.2. Reprezentarea prin
pseudocod . . . . . . . . . . . .
1.3. Teoria rezolvrii problemelor . . . . . . . .
ntrebri i exerciii . . . . . . . . . . . . . . . . . . . .
CAPITOLUL 2 Date, operatori i expresii
2.1. Limbajele C i C++ . . . . . . . . . . . . . . . .
2.2. Programe n limbajul C/C++ . . . . . . . . .
2.3. Preprocesorul . . . . . . . . . . . . . . . . . . . . .
2.4. Elemente de baz ale limbajului . . . . . .
2.4.1. Vocabularul . . . . . . . . . . . . . . . . . .
2.4.2. Unitile lexicale . . . . . . . . . . . . . .
2.5. Date n limbajul C/C++ . . . . . . . . . . . . .
2.5.1. Tipuri de date . . . . . . . . . . . . . . . .
2.5.2. Constante . . . . . . . . . . . . . . . . . . .
2.5.2.1. Constante ntregi . . . . . . .
2.5.2.2. Constante numerice, reale.
2.5.2.3. Constante caracter . . . . . .
2.5.2.4. Constante ir de caractere
2.5.3. Variabile . . . . . . . . . . . . . . . . . . . .
2.5.3.1. Declararea variabilelor . .
2.5.3.2. Iniializarea variabilelor n
declaraii . . . . . . . . . . . . . .
2.5.3.3. Operaii de intrare/ieire .
2.6. Operatori i expresii . . . . . . . . . . . . . . . .
2.6.1. Operatori . . . . . . . . . . . . . . . . . . . .
2.6.2. Expresii . . . . . . . . . . . . . . . . . . . . .
2.6.3. Conversii de tip . . . . . . . . . . . . . . .
ntrebri i exerciii . . . . . . . . . . . . . . . . . . . .
CAPITOLUL 3 Implementarea
structurilor de control
3.1. Implementarea structurii secveniale . . .

3.2. Implementarea structurii de decizie . . .


3.3. Implementarea structurilor repetitive
(ciclice) . . . . . . . . . . . . . . . . . . . . . . . . .
3.3.1. Implementarea structurilor
ciclice cu test iniial . . . . . . . . . .
3.3.2. Implementarea structurilor
ciclice cu test final . . . . . . . . . . .
3.4. Faciliti de ntrerupere a unei secvene
ntrebri i exerciii . . . . . . . . . . . . . . . . . . .

9
11
11
12
12
13
14
16
18

CAPITOLUL 4 Tablouri
4.1. Declararea tablourilor . . . . . . . . . . . . . . .
4.2. Tablouri unidimensionale . . . . . . . . . . . .
4.3. Tablouri bidimensionale . . . . . . . . . . . . .
4.4. iruri de caractere . . . . . . . . . . . . . . . . . .
ntrebri i exerciii . . . . . . . . . . . . . . . . . . . .

19
19
21
22
22
22
23
23
25
25
25
27
28
29
29

CAPITOLUL 5 Pointeri
5.1.Variabile pointer . . . . . . . . . . . . . . . . . . .
5.1.1. Declararea variabilelor pointer . . .
5.1.2. Iniializarea variabilelor pointer . .
5.1.3. Pointeri generici . . . . . . . . . . . . .
5.2. Operaii cu pointeri . . . . . . . . . . . . . . . . .
5.3. Pointeri i tablouri . . . . . . . . . . . . . . . . . .
5.3.1. Pointeri i iruri de caractere . . . .
5.3.2.Pointeri i tablouri bidimensionale.
5.4. Tablouri de pointeri . . . . . . . . . . . . . . . .
5.5. Pointeri la pointeri . . . . . . . . . . . . . . . . .
5.6. Modificatorul const n declararea
pointerilor . . . . . . . . . . . . . . . . . . . . . . . .
ntrebri i exerciii . . . . . . . . . . . . . . . . . . . .

29
30
31
31
39
39
39

CAPITOLUL 6 Funcii
6.1. Structura unei funcii . . . . . . . . . . . . . . .
6.2. Apelul i prototipul unei funcii . . . . . . .
6.3. Transferul parametrilor unei funcii . . . .
6.3.1. Transferul parametrilor prin
valoare . . . . . . . . . . . . . . . . . . . . .
6.3.2. Transferul prin pointeri . . . . . . . .
6.3.2.1. Funcii care returneaz
pointeri . . . . . . . . . . . . . .
6.3.3. Transferul prin referin . . . . . . .

41

42
45
45
46
50
51
53
53
55
57
60
61
61
62
63
63
64
64
66
67
68
69
69
71
72
74
75
75
77
77

Cuprins

Cuprins

PARTEA a II a
6.3.4. Transferul parametrilor ctre
funcia main . . . . . . . . . . . . . . . . 81
6.4. Tablouri ca parametri . . . . . . . . . . . . . . . 81
6.5. Funcii cu parametri implicii . . . . . . . . . 84
6.6. Funcii cu numr variabil de parametri . 84
6.7. Funcii predefinite . . . . . . . . . . . . . . . . . 85
6.7.1. Funcii matematice . . . . . . . . . . . . 85
6.7.2. Funcii de clasificare (testare) a
caracterelor . . . . . . . . . . . . . . . . .
85
6.7.3. Funcii de conversie a
caracterelor . . . . . . . . . . . . . . . . .
87
6.7.4. Funcii de conversie din ir n
numr . . . . . . . . . . . . . . . . . . . . . . 87
6.7.5. Funcii de terminare a unui proces
(program) . . . . . . . . . . . . . . . . . . . 87
6.7.6. Funcii de intrare/ieire . . . . . . . .
88
6.8. Clase de memorare . . . . . . . . . . . . . . . . . 90
6.9. Moduri de alocare a memoriei . . . . . . . 92
6.10.Funcii recursive . . . . . . . . . . . . . . . . . . 95
6.11.Pointeri ctre funcii . . . . . . . . . . . . . . . 100
ntrebri i exerciii . . . . . . . . . . . . . . . . . . . . 101
CAPITOLUL 7 Tipuri de date definite
de utilizator
7.1. Tipuri definite de utilizator . . . . . . . . . .
7.2. Structuri . . . . . . . . . . . . . . . . . . . . . . . . .
7.3. Cmpuri de bii . . . . . . . . . . . . . . . . . . . .
7.4. Declaraii typedef . . . . . . . . . . . . . . . . . .
7.5. Uniuni . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.6. Enumerri . . . . . . . . . . . . . . . . . . . . . . . .
ntrebri i exerciii . . . . . . . . . . . . . . . . . . . .
CAPITOLUL 8 Fiiere
8.1. Caracteristicile generale ale fiierelor. . .
8.2. Deschiderea unui fiier . . . . . . . . . . . . . .
8.3. nchiderea unui fiier . . . . . . . . . . . . . . .
8.4. Prelucrarea fiierelor text . . . . . . . . . . . .
8.4.1. Prelucrarea la nivel de caracter . .
8.4.2. Prelucrarea la nivel de cuvnt. . . .
8.4.3. Prelucrarea la nivel de ir de
caractere . . . . . . . . . . . . . . . . . . .
8.4.4. Intrri/ieiri formatate . . . . . . . . .
8.5. Intrri/ieiri binare . . . . . . . . . . . . . . . . .
8.6. Poziionarea ntr-un fiier . . . . . . . . . . . .
8.7. Funcii utilitare pentru lucrul cu fiiere. .
8.8. Alte operaii cu fiiere . . . . . . . . . . . . . .
ntrebri i exerciii . . . . . . . . . . . . . . . . . . . .

CAPITOLUL 9 Concepte de baz ale


programrii orientate obiect
9.1. Introducere . . . . . . . . . . . . . . . . . . . . . . .
9.2. Abstractizarea datelor . . . . . . . . . . . . . .
9.3. Motenirea . . . . . . . . . . . . . . . . . . . . . . .
9.3.1. Motenirea unic . . . . . . . . . . . . .
9.3.1. Motenirea multipl . . . . . . . . . . .
9.4. ncapsularea informaiei . . . . . . . . . . . . .
9.5. Legarea dinamic (trzie) . . . . . . . . . . . .
9.6. Alte aspecte . . . . . . . . . . . . . . . . . . . . . .
CAPITOLUL 10 Clase i obiecte
10.1. Definiia claselor i accesul la
Membri . . . . . . . . . . . . . . . . . . . . . . . . .
10.1.1. Legtura clas-structurUniune . . . . . . . . . . . . . . . . . . .
10.1.2. Declararea claselor . . . . . . . . .
10.1.3. Obiecte . . . . . . . . . . . . . . . . . .
10.1.4. Membrii unei clase . . . . . . . . .
10.1.5. Pointerul this . . . . . . . . . . . . . .
10.1.6. Domeniul unui nume,
vizibilitate i timp de via . . .
10.2. Funcii inline . . . . . . . . . . . . . . . . . . . .
10.3. Constructori i destructori . . . . . . . . . .
10.3.1. Iniializarea datelor . . . . . . . . .
10.3.2. Constructori . . . . . . . . . . . . . .
10.3.1.1. Constructori cu
liste de iniializare. .
10.3.1.2. Constructori de
copiere . . . . . . . . . .
10.3.3. Destructori . . . . . . . . . . . . . . .
10.3.4. Tablouri de obiecte . . . . . . . . .
10.4. Funcii prietene (friend) . . . . . . . . . . . .
ntrebri i exerciii . . . . . . . . . . . . . . . . . . . .

103
103
106
107
107
108
111
113
114
116
116
116
117

CAPITOLUL 11 Suprancrcarea
operatorilor
11.1. Moduri de suprancrcare a
operatorilor . . . . . . . . . . . . . . . . . . . . .
11.1.1. Suprancrcarea prin funcii
membre . . . . . . . . . . . . . . . . . .
11.1.2. Suprancrcarea prin funcii
prietene . . . . . . . . . . . . . . . . . .
11.2. Restricii la suprancrcarea
operatorilor . . . . . . . . . . . . . . . . . . . . .
11.3. Suprancrcarea operatorilor unari . . .
11.4. Membrii constani ai unei clase . . . . .

118
119
119
120
121
122
126

129
129
130
130
130
131
132
132

133
133
133
136
136
139
139
140
142
142
143
144
145
145
150
151
151

153
153
154
155
156
156

Cuprins

Cuprins

11.5. Suprancrcarea operatorilor


insertor i extractor . . . . . . . . . . . . . . .
11.6. Suprancrcarea operatorului de
atribuire = . . . . . . . . . . . . . . . . . . . . . . .
11.7. Suprancrcarea operatorului de
indexare [ ] . . . . . . . . . . . . . . . . . . . . . .
11.8. Suprancrcarea operatorilor new i
delete. . . . . . . . . . . . . . . . . . . . . . . . . .
11.9. Suprancrcarea operatorului ( ) . . . . .
11.10. Suprancrcarea operatorului -> . . . . .
11.11. Conversii . . . . . . . . . . . . . . . . . . . . . .
11.11.1. Conversii din tip
predefinit1 n tip predefinit2.
11.11.2. Conversii din tip predefinit
n clas . . . . . . . . . . . . . . . . .
11.11.3. Conversii din clas n tip
predefinit . . . . . . . . . . . . . . .
11.11.4. Conversii din clas1 n
clas2 . . . . . . . . . . . . . . . . . .
ntrebri i exerciii . . . . . . . . . . . . . . . . . . . .

12.4. Motenirea simpl . . . . . . . . . . . . . . .


12.5. Motenirea multipl . . . . . . . . . . . . . .
12.6. Redefinirea membrilor unei clase de
baz n clasa derivat . . . . . . . . . . . . .
12.7. Metode virtuale . . . . . . . . . . . . . . . . .
ntrebri i exerciii . . . . . . . . . . . . . . . . . . .

156
157
158
164
166
166
172

CAPITOLUL 13 Intrri/ieiri
13.1. Principiile de baz ale sistemului de
I/O din limbajul C++ . . . . . . . . . . . . .
13.2. Testarea i modificarea strii unui
flux . . . . . . . . . . . . . . . . . . . . . . . . . . .
13.3. Formatarea unui flux . . . . . . . . . . . . .
13.3.1. Formatarea prin
manipulatori . . . . . . . . . . . . .
13.3.1.2. Manipulatori fr
parametri . . . . . . . .
13.3.1.2. Manipulatori cu
parametri . . . . . . . .
13.3.2. Formatarea prin metode . . . . .
13.4. Metodele clasei istream . . . . . . . . . . .
13.5. Metodele clasei ostream . . . . . . . . . .
13.6. Manipulatori creai de utilizator . . . .
13.7. Fluxuri pentru fiiere . . . . . . . . . . . . .
13.8. Fiiere binare . . . . . . . . . . . . . . . . . . .
ntrebri i exerciii . . . . . . . . . . . . . . . . . . .

172
172
173
173
176

CAPITOLUL 12 Crearea ierarhiilor de


clase
12.1. Mecanismul motenirii . . . . . . . . . . . . . 176
12.2. Modul de declarare a claselor derivate. 177
12.3. Constructorii claselor derivate . . . . . . . 178

179
186
187
191
195

197
199
201
202
202
202
203
204
205
206
207
210