.


:




:

































 

 

 

 





++ - , () . , ( ) . , () . , , , , , (, ) , , . , , .., (.. , , , ).

, . , () , , , , , - , , , ... .

++ ( ) private (), protected (), public (). , , . struct, , , class, . . :

class F { // class, // c // , , // (private)

; //private

; //private

public: //C , //, //

; //public

; //public

};

. (private), (public).

class comp { // () comp

double Re, Im;

static int count;

public: // () comp

comp (){Re= 0; Im= 0; count++;} // ( )

comp(double r, double i) {Re = r; Im = i; count++;} //

comp(comp &T) { Re= T.Re; Im = T.Im; count++;} //

comp(double r) {Re = r; Im=0; count++;} //

~comp(){count--;} //

void display(){cout<<\n Re =<<Re<<\t Im =<<Im;}// display()

static int GetCountComp(){return count;}

void SetRe(double r){Re = r;}

void SetIm(double i){ Im = i;}

double GetRe(){return Re;}

double GetIm(){return Im;}

friend comp raz(comp& A, comp& B);

};

int comp::count = 0; //

Re, Im count omp , comp. , Re= T.Re; , main(), . , comp, SetRe(), SetIm(), GetRe(), GetIm(), . , online (), , , .

sum () , Re Im SetRe(), SetIm(), GetRe(), GetIm().

( ) sum()

comp sum(comp A, comp& ){

comp D;

D.SetRe(A.GetRe() +.GetRe());

D.SetIm (A.GetIm() +.GetIm());

return D;

}

sum (), . , ++. , , . . , friend, raz().

( ) raz()

comp raz(comp& A, comp& ){

comp D;

D.Re = A.Re -.Re;

D.Im = A.Im -.Im;

return D;

}

, comp .

, , , .. .

, :

, ;

( ):

class CL { friend int f1 (...);... };

int fl(...) { _ }

:

class CL1 {... char f2 (...);... };

class CL2 {... friend char CL1::f2(...);... };

CL1 c f2 () CL2. (CL1) (CL2), , (CL).

:

// class CL2;

class CL1 { friend void ff{CLl,CL2);... };

class CL2 { friend void ff{CLl,Cl2);... };

void ff(CL1 cl,CL2 c2) { _ }

, . , . , " ". , :

class X2 {

friend class X1;

};

class X1 {... //

void f1(...);

void f2(...);

};

 

f1 f2 X1 2, friend.

X2 X1. (), .

 

, , () .

, {function template) . :

template <__> _

. .

:

template <__>

, . , , . , .

, .

++, ( ). (, , ..), , .. , ( ) .

:

template <class T> // -

class Vector {

*data; //

int size; //

public:

Vector(int); // vector

~Vector() { delete[] data; } //

// () "[]":

& operator[] (int i) { return data[i]; }

};

// :

template <class T>

Vector<T>::Vector(int n) { data = new T[n]; size = n; };

, , . , :

__<__> _ (_);

, double, :

Vector <double> Z(8); :

 

#include "templatevec.h" // ""

#include <iostream.h>

main(){ // " ":

Vector <int> (5);

// " ":

Vector <char> C(5);

// :

for (int i = 0; i < 5; i++) { X[i] = i; C[i] = 'A' + i;}

for (int i = 0; i < 5; i++) cout << " " << X[i] << ' ' << C[i]; }

:

0 A 1 B 2 Ѡ 3 D 4 E

vector . , ( Vector), (), . . int char. Vector - .

, , - , :

#include <iostream.h>

template <class T, int size = 64>

class row {

T *data;

int length;

public: row() { length = size; data = new T[size]; }

~row() { deleted data; }

T& operator [] (int i) { return data[i]; }

};

void main () {

row <float,8> rf;

row <int> ri;

for (int i = 0; i < 8; i++) { rf[i] = i; ri[i] = i * i; }

for (i = 0; i < 64; i++) cout<<" " << rf[i] << ' ' << ri[i];

}

:

0 0 1 1 2 4 3 9 4 16 5 25 6 36 7 49

, size, . , , , .

 

1. , .

2. .

3. .

4. .

5. define .

6. .

7. .

8. , +, ‑

9. ,

10.

 

1. ?

a)

b)

c) .

2. ?

a) .

b)

c) .

3. ?

a) struct

b) typedef

c) define

4. , :

a)

b)

c)

5. , :

a)

b)

c)

6. ?

a) extern

b) auto

c) static

7. this?

a) .

b)

8. ?

a)

b)

c)

d)

9. ?

a)

b)

c)

d)

10. ?

a)

b)

c)

d)

11. ?

a)

b)

c)

d)

12. this?

a)

b)

c)

13. ?

a) +

b) ‑

c) #

14. ?

a)

b)

c) ,

15. ?

a)

b)

c) ,

16. public?

a)

b)

c)

17. protected?

a)

b)

c)

18. private?

a)

b)

c)

19.

a) Template

b) Private

c) Typedef

20. 18 ?

a)

b)

c) , .

1 A 11 D
2 A 12 C
3 A 13 C
4 B 14 B
5 C 15 B
6 C 16 A
7 A 17 C
8 A 18 B
9 B 19 A
10 C 20 C

 

. , , .

85 100% - ;

70 84% - ;

55 69% - ;

55% - .

 

5





:


: 2018-10-15; !; : 250 |


:

:

, , . , .
==> ...

1585 - | 1422 -


© 2015-2024 lektsii.org - -

: 0.112 .