Question: Assume that the following code runs without any errors. Inside the main ( ) function, objects of class Q and class O has been defined

Assume that the following code runs without any errors. Inside the main() function, objects of class Q and class O has been defined respectively. What will be the correct sequence of constructor and destructor being called for the following code?
class M
{
public:
M(){ cout<<"M"; }
~M(){ cout<<"~M"; }
};
class N
{
public:
N(){ cout<<"N"; }
~N(){ cout<<"~N"; }
};
class O
{
N n; M m;
public:
O(){ cout<<"O"; }
~O(){ cout<<"~0"; }
};
class P
{
public:
P(){ cout<<"p";}
~P(){ cout<<"~p"; }
};
class Q: public O
{
Pp; N n;
public:
Q(){ cout<<"Q"; }
~Q(){ cout<<"~Q"; }}

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!