.


:




:

































 

 

 

 


new delete




new .

. . , new , :

k=3;

int *p[]=new int[k][5]; // cannot convert from 'int (*)[5]' to 'int *[]'

int (*p)[5]=new int[k][5]; //

. .

int *a = new int (10234);

.

, (-

, ).

,

, .

class matr

{ int a;

float b;

public:

matr(){}; //

matr(int i,float j): a(i),b(j) {}

~matr(){};

};

int main()

{ matr mt(3,.5);

matr *p1=new matr[2]; // 1 − 2

matr *p2=new matr[2] (2,3.4); // ,

matr *p3=new matr (2,3.4); // 3

}

 

class A

{ int i; // -

public:

A(){} //

~A(){} //

};

int main()

{ A *a,*b; //

float *c,*d; // float

a=new A; //

b=new A[3]; //

c=new float; // float

d=new float[4]; // float

delete a; // ,

delete [] b; // ,

delete c; // float

delete [] d; } // float

(friend)

(

)

() . -

, , -

(). , public-

.

,

. -

()

. ++ -

.

++ friend.

friend- , :

- - ;

- (private, public protected).

,

.

 

#include <iostream>

using namespace std;

class kls

{ int i,j;

public:

kls(int i,int J): i(I),j(J) {} //

int max() {return i>j? i: j;} // - kls

friend double fun(int, kls&); // friend- fun

};

double fun(int i, kls &x) //

{ return (double)i/x.i;

}

main()

{ kls obj(2,3);

cout << obj.max() << endl;

out << fun(3,obj) << endl;

return 1;

}

 

 

.

(++) : -

, . & _ = .

.

. -

. -,

, . . -, , , .

,

,

. ++ -

. -

&.

void fun1(int,int);

void fun2(int &,int &);

int main()

{ int i=1,j=2; // i j

cout << "\n main() i = "<<&i<<" j = "<<&j;

cout << "\n i = "<<i<<" j = "<<j;

fun1(i,j);

cout << "\n i = "<<i<<" j = "<<j;

fun2(i,j);

cout << "\n i = "<<i<<" j = "<<j;

}

void fun1(int i,int j)

{ cout << "\n fun1() i = "<<&i<<" j = "<<&j;

int a; // fun1 i j main()

a=i; i=j; j=a; // i j main()

} //

void fun2(int &i,int &j)

{ cout << "\n fun2() i = "<<&i<<" j = "<<&j;

int a; // i j

a=i; i=j; j=a; } // main() ( )

// i j

 

 

 

 

.

++

. -

, :

#include <iostream>

using namespace std;

int main()

{ int i=1;

int &j=i; // j ( ) i

cout << "\n i = "<<&i<<" j = "<<&j;

cout << "\n i = "<<i<<" j = "<<j;

j=5; //

cout << "\n i = "<<&i<<" j = "<<&j;

cout << "\n i = "<<i<<" j = "<<j;

return 0;

}

:

i = 0x1 j = 0x2

i = 1 j = 1

i = 0x1 j = 0x2

i =5 j = 5

j, -

i. j

i.

 

 





:


: 2016-07-29; !; : 471 |


:

:

, .
==> ...

1453 - | 1389 -


© 2015-2024 lektsii.org - -

: 0.018 .