. , , ,

,,,

,

++ .

. . , , .

, - - . :

class { ... };

class : public { ... };

class : public { ... };

, , , , / -. . .

, :

- , . ?

, , - , . - . . , , , :

class : public , public { ...};

, - . , , , . . , 2 . , - . . , .

, . , . :

class { ... };

class : virtual public { ... };

class : virtual public { ... };

class : public , public { ...

};

. - ? ? - .

. . ++ , . , , . :

class { ... };

class { ... };

class { ... };

, :

class : public { ... };

class : public , public { ... };

class : public , public { ...};

class : public , public ,

public { ... };

, , - -. . , - "" . , , .

, . :

class

{

& m_;

public:

( & init)

: m_( init)

{ ... };

};

class : public , public

{

public:

()

: (), ( *this)

{ ...};

};

, , - , , , . , *this , . , , *this. , , , .

, , . , , . dynamic_cast, , . :

class

{

public:

(){};

virtual void Func( void);

// ,

{

* ptr = dynamic_cast< * >( this);

if( ptr)

{

//

}

};

};

, , . , dynamic_cast , . Func , , , , . , dynamic_cast - . .

, , . , .


++ .

 

 

 

! , , , .
. , :