Explain nested classes, C/C++ Programming

Assignment Help:

Nested Classes

Many a times, it becomes essential to have a class contain properties of two other classes. One way is to explain a class within another - that is a class with member classes also known as nested classes. This has nothing to do with inheritance. Another way is multiple inheritance , which will be discussed later.

e.g.

                class Aclass

                 {

                  public :

                                                Aclass(int pv)

                                                 {

                                                                private_variable_A = pv;

                                                 }

  private :

                                                int private_variable_A;

                                  };

 

                class Bclass

                 {

                  public :

                                                Bclass(int bpv, int apv): Aobj(apv)

                                                 {

                                                                private_variable_B = bpv;

                                                 }

                  private :

                                                int private_variable_B;

                                                Aclass Aobj;        // Declaring an object here.

                  };

 

As can be seen , the class Bclass have an object Aobj in its private section as one of its members. Also, it have a constructor function with the similar name, to which the two variables passed are bpv and apv. The variable bpv is used to initialize the private variable of Bclass.

Though, the constructor contains something after the colon. The part after the colon in the definition of a constructor is known as initialization section and the actual body of the constructor is known as assignment section . Initialization section initializes the base class members, while assignment section contains statements to initialize the derived class members.

 


Related Discussions:- Explain nested classes

Define bitwise left shift and right shift operators, Define Bitwise Left Sh...

Define Bitwise Left Shift and Right Shift Operators: >? The bitwise shift operators shift their first operand right (>>) or left ( // Illustration of the bitwise right shi

Programming, write a program that can accept numbers and perform all the fo...

write a program that can accept numbers and perform all the four arithmetic operation

Declaration of variables in cpp, Declaration of Variables: Variables ar...

Declaration of Variables: Variables are declared as follows: int a; float b;   Assigning value to variables: int a = 100; Declaring and assigning is called ini

Change to palindrome, A palindrome is a string that reads the same from bot...

A palindrome is a string that reads the same from both the ends. Given a string S convert it to a palindrome by doing character replacement. Your task is to convert S to palindrome

write a scheme procedure to evaluate expression, (a) Write a Scheme proced...

(a) Write a Scheme procedure to evaluate the expression: 7/6+2*5+(3*2+6*7)*4. (b) Write a Scheme procedure to evaluate the expression: 2*(-1+(-3+4*2-7)*3/(3*2)).

AREA UNDER CURVE, Write a program to find the area under the curve y = f(x)...

Write a program to find the area under the curve y = f(x) between x = a and x = b, integrate y = f(x) between the limits of a and b. The area under a curve between two points can b

Calculate the average assignment grade, 1. The main program must be in a fi...

1. The main program must be in a file called A4.cpp 2. The data must be read in from a data file.  The user must enter the filename.  A sample data file will be provided on Mood

Programming, pseudocode for gregorian calendar

pseudocode for gregorian calendar

Pragma, How to specify different memory sections for a variable using #Prag...

How to specify different memory sections for a variable using #Pragma?

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd