You are on page 1of 8

Q1)

Code:

#include<iostream>

using namespace std;

class A {

public:

class B {

private:

int num;

public:

void getdata(int n) {

num = n;

void putdata() {

cout<<"The number is "<<num;

};

};

int main() {

cout<<"Nested classes in C++"<< endl;

A :: B obj;

obj.getdata(9);

obj.putdata();

return 0;

Q2)
Code:

#include <iostream>

using namespace std;

class A; // forward declaration of A needed by B

class B

public:

void display(A obj); //no body declared

};

class A

int x;

public:

A()

x = 4;

friend void B::display(A);

};

void B::display(A obj)

cout << obj.x << endl;

int main()

{
A a;

B b;

b.display(a);

return 0;

Output:

Q3)

Code:

#include <iostream>

using namespace std;

class base{

public:

void fun()

cout<<"fun of base "<<endl;

virtual void fun1()

cout<<"fun1 of base "<<endl;

};

class derived: public base

public:

void fun()

{
cout<<"fun of derieved "<<endl;

void fun1 ()

cout<<"fun1 of derieved "<<endl;

};

int main ()

derived d,d1;

base *p=&d;

base *p1=&d1;

p->fun();

p->fun();

Output:

Q4)

Code:

class Base

public:

Base ( )

cout << "Inside Base constructor" << endl;


}

~Base ( )

cout << "Inside Base destructor" << endl;

};

class Derived : public Base

public:

Derived ( )

cout << "Inside Derived constructor" << endl;

~Derived ( )

cout << "Inside Derived destructor" << endl;

};

void main( )

Derived x;

}
Output:

Q5)

Code:

#include <iostream>

using namespace std;

// Base Class

class BaseClass {

public:

int var_base;

// Function to display the base

// class members

void display()

cout << "Displaying Base class"

<< " variable var_base: " << var_base << endl;

};

// Class derived from the Base Class

class DerivedClass : public BaseClass {

public:

int var_derived;
// Function to display the base

// and derived class members

void display()

cout << "Displaying Base class"

<< "variable var_base: " << var_base << endl;

cout << "Displaying Derived "

<< " class variable var_derived: "

<< var_derived << endl;

};

// Driver Code

int main()

// Pointer to base class

BaseClass* base_class_pointer;

BaseClass obj_base;

DerivedClass obj_derived;

// Pointing to derived class

base_class_pointer = &obj_derived;

base_class_pointer->var_base = 34;

// Throw an error

base_class_pointer->display();

base_class_pointer->var_base = 3400;

base_class_pointer->display();
DerivedClass* derived_class_pointer;

derived_class_pointer = &obj_derived;

derived_class_pointer->var_base = 9448;

derived_class_pointer->var_derived = 98;

derived_class_pointer->display();

return 0;

Output:

You might also like