Explain static class members, C/C++ Programming

Assignment Help:

Static Class Members

As we already know all the objects of the class have dissimilar data members but invoke the similar member functions. Though, there is an exception to this rule. If the data member is declared with the keyword static, then only one such data item is formed for the entire class, no matter how many objects it has. Static data members are useful, if all objects of a class must share a common data item. While, the visibility of this data item remains similar, the duration of this variable is for whole lifetime of the program.

For example, such a variable can be particularly useful if an object needs to know how many objects of its kind exist.

class counter

                 {

                  public :

                                                counter ();

                                                int getcount();

  private:

                                static int count;

                };

counter::counter ()

                 {

                count++;

                 }

 

int counter::getcount()

                {

                                return ( count );

                 }

 

     int counter :: count = 0;// INITIALIZATION OF STATIC MEMBER.

 

                void main()

                 {

                  counter c1,c2;

                                cout << " Count = " << c1.getcount() << endl;

                                cout << " Count = " << c2.getcount() << endl;

 

                  counter c3;

                                cout << " Count = " << c3.getcount() << endl;

                  counter c4,c5;

                                cout << " Count = " << c4.getcount() << endl;

                                cout << " Count = " << c5.getcount() << endl;

                  }

 

Output:

 

                Count = 2             // not 1 because 2 objects are already created.

                Count = 2

                Count = 3

                Count = 5

                Count = 5

 

 


Related Discussions:- Explain static class members

Matrices, write a c program that multiplies 3 martices

write a c program that multiplies 3 martices

C++ Program Please see where i do mistake, #include #include #include ...

#include #include #include #include #include class Employee { private: char *Name; //Set them as pointers... int IdNumber; char *Department; char *Position; public: voi

Microprocessor programming, I need to program a microprocessor that would h...

I need to program a microprocessor that would have a temperature, gas, humidity and PIR sensor connected to it. It would send the data to a PC via a Zigbee and receive commands fro

COMPILER DESIGN, Compiler Design - Limit In The Method Instructions

Compiler Design - Limit In The Method Instructions

Decode the Code, Smugglers are becoming very smart day by day. Now they hav...

Smugglers are becoming very smart day by day. Now they have developed a new technique of sending their messages from one smuggler to another. In their new technology, they are send

Explain control flow, Control Flow The control flow statements are used...

Control Flow The control flow statements are used when it is needed that the flow of the program is to be changed after taking some decision. This control flow statement theref

Explain the ways of initializing the arrays, Various ways of initializing t...

Various ways of initializing the Arrays. - The for loop initializes 10 elements with the value of their index.      void main()     {                 const in

Object Oriented Programming, Ask queCreate an object oriented application w...

Ask queCreate an object oriented application with C# that computes the area of a rectangle, and the area and the volume of a cuboid. Based on the inheritance concept, create a bas

Where are longjmp and setjmp used in c++, Where are longjmp and setjmp used...

Where are longjmp and setjmp used in C++? -Setjmp and longjmp must not be used in C++. - Longjmp jumps out of the function without unwinding stack. This means that local obj

Write a recursive function with cylinders, I need to make a fractal trees i...

I need to make a fractal trees in OpenGL C++ . The method used is to write a recursive function with cylinders of different sizes and angles to create the tree trunk and branches.

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