.


:




:

































 

 

 

 





, . , . . . , . . , - local. .

#include<iostream>

using namespace std;

class local

{ public:

local() { cout<<"Constructor of local"<<endl; }

~local() { cout<<"Destructor of local"<<endl; }

};

class A

{ protected:

int n;

public:

A() { cout<<"Constructor of A"<<endl; }

virtual ~A() { cout<<"Destructor of A"<<endl; }

virtual void f()=0;

};

class B: public A

{ public:

local ob;

B(int i=0)

{ cout<<"Constructor of B"<<endl;

if(i) throw 1;

n=i;

}

~B() {cout<<"Destructor of B"<<endl; }

void f(){cout<<"** "<<n<<" **"<<endl;}

};

int main()

{ A *p;

try {

p=new B(1);

p->f();

}

catch(int) {

cout<<"int exception handler"<<endl;

return 1;

}

p->f();

delete p;

return 0;

}

:

Constructor of A

Constructor of local

Constructor of B

int exception handler

Destructor of local

Destructor of A

, local, . , . (try{}) , .

delete p;

. , , , .

, , , .

 





:


: 2015-09-20; !; : 1325 |


:

:

, , .
==> ...

2042 - | 1682 -


© 2015-2024 lektsii.org - -

: 0.01 .