.


:




:

































 

 

 

 


dynamic_cast . . static_cast, reinterpret_cast const_cast




, dynamic_cast , . , , RTTI. .

dynamic_cast :

- std::type_info ;

- std::type_info ;

- , , , , .

 

void f (Base & _base)

{

if (Derived* pDerived = dynamic_cast< Derived * >(& _base))

do1();

else

do2();

}

 

, , - , . , Derived , dynamic_cast , - nullptr. , ( , , ).

dynamic_cast , :

void f (Base & _base)

{

Derived & derived = dynamic_cast< Derived & >(_base);

...

}

, , , . . , . , , dynamic_cast nullptr , .

dynamic_cast, , , . , . dynamic_cast , static_cast C:

● ;

● ( );

● ( ).

reinterpret_cast. . .

. const_cast. const_cast volatile

 

 





:


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


:

:

, .
==> ...

837 - | 670 -


© 2015-2024 lektsii.org - -

: 0.012 .