Documente Academic
Documente Profesional
Documente Cultură
S2. (Enunţ: 1p; Subiect: 9 puncte). Fără a rula acest program, să se precizeze ce se va afişa pe ecran.
# include <iostream.h>
class B {
public: int a, b;
B (int x, int y) { a = x; b = y; cout << "Constructor cl B:" << " a = " << a << " b = " << b << endl; }
};
class D1 : virtual public B {
public: D1 (int x, int y) : B (x, y) { cout << "Constructor cl D1:" << endl; }
int f() { return a + b; }
};
1
S3. (Enunţ: 1p; Subiect: 9 puncte). Fără a rula acest program, să se precizeze ce se va afişa pe ecran.
# include <iostream.h>
class A {
int n;
public:
int N() const { return n; }
void g() { cout << "Functia g in clasa A" << endl; }
A(int k = 0) { n = k; cout << "Constructorul clasei A" << endl; } // Constructorul clasei A
};
class B {
double q;
public:
double Z() const { return q; }
void f() { cout << "Functia f in clasa B" << endl; }
void g() { cout << "Functia g in clasa B" << endl; }
B(double k = 10) { q = k; cout << "Constructorul clasei B" << endl; } // Constructorul clasei B
};
void main() {
X x; A a(5); B b(5.3);
x.f(); x.ga(); x.gb(); x.Xn(); x.Zq();
x.Xc();
}
2
S4. (Enunţ: 1p; Subiect: 9 puncte). Fără a rula acest program, să se precizeze ce se va afişa pe ecran.
# include <iostream.h>
class A {
int i;
public: A(int x) { i = x; cout << "Constructorul clasei A\n"; }
~A() {cout << "Destructorul clasei A\n";}
int f() { return 2*i; }
};
class B {
int i;
public:
B(int y) { i = y; cout << "Constructorul clasei B\n"; }
~B() {cout << "Destructorul clasei B\n";}
int f() { return 2*i;}
};
class C : public B {
B b;
public:
C(int z, int t) : B(z), b(t) { cout << "Constructorul clasei C\n"; }
~C() {cout << "Destructorul clasei C\n";}
int f() { return B::f(); }
int g() { return B::f() + b.f() + f(); }
};
---------------------------------------------------
3
Răspunsuri:
S2. Ex 01_11.cpp
Construiesc cl B: a = 2 b = 1
Construiesc cl D1:
Construiesc cl D2: k = 2
Construiesc cl D3: u = 1
6
Construiesc cl B: a = 2 b = 3
Construiesc cl D1:
5
Construiesc cl B: a = 1 b = 2
Construiesc cl D2: k = 3
6 9
Construiesc cl B: a = 3 b = 3
Construiesc cl D1:
Construiesc cl D2: k = 1
Construiesc cl D3: u = 1
16
S3. Se afişează:
Constructorul clasei A
Constructorul clasei B
Constructorul clasei X