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

What are the different steps in executing a c program, Question 1 What are...

Question 1 What are the different steps in executing a C program? Explain Question 2 What are the commonly used input/output functions in C? How are they accessed?

Do friends break encapsulation?, A: No. If they're utilized properly, they ...

A: No. If they're utilized properly, they increase encapsulation. You frequently require splitting a class in half while the two halves will have distinct numbers of instances o

Execution of string length using pointer hopping, A: #include // Test to...

A: #include // Test to see if pointer hopping is worthwhile. // strlen implemented with usual indexing mechanism. int strlen1( const char str[ ] ) { int i; for( i =

Is there present a way to force new to allocate memory, Yes. "Memory pools"...

Yes. "Memory pools" are useful in many situations. The bad news is that I'll need to drag you through the mire of how it acts before we talk about all the uses. Firstly, recall

Compiling/ installing openvpn client within an ip camera, Project Descripti...

Project Description: I want someone with experience on adding/compiling/installing the OpenVPN client software within an IP network camera's embedded operating system. Either if

Stack operations - c++, Stack operations - C++: Write a program to def...

Stack operations - C++: Write a program to define basic stack operations in c++. int Stack::push(int elem) {    int m = getmax();    if (top    {       put_

Program of file data, Program of file data: FileData::FileData( ffblk&...

Program of file data: FileData::FileData( ffblk& blk ) :     fileName( blk.ff_name ),     fileDate( (blk.ff_fdate >> 5) & 0x000F,               blk.ff_fdate & 0x0001F

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

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

M - algorithm corrections, Of course it is C[i] = A[i] + B[i].It was a typi...

Of course it is C[i] = A[i] + B[i].It was a typing mistake,never mind. You just understand the concept. 27-1 b. for grain-size=1 n=A.length grain-size=1 r=n for

Make c++ program that help health visitor statistics, Pupils' heights The ...

Pupils' heights The health visitor at a school is going to measure the heights of all pupils. For each class she makes a statistics giving the number of pupils of each height and

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