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

Explain passing and returning objects, Passing and Returning Objects Ob...

Passing and Returning Objects Objects can be passed to a function and returned back just like normal variables. When an object is passed by content, the compiler makes another

Explain the process of using the constructor, Using the Constructor The...

Using the Constructor There are basically three ways of creating and initializing the object. The first way to call the constructor is explicitly as :

Bulk listing posting for a site like ebay, Project Description: I posted...

Project Description: I posted listings on a site that is like eBay but for video games. I post the similar listing many times daily, but need something that will let me post

What is the significance of external declaration, Problem 1 What is the...

Problem 1 What is the difference between function declaration and function definition? 2 Write a recursive function to find sum of even numbers from 2 to 10. 3 List some

Explain the break statement, The break statement The break statement, w...

The break statement The break statement, which was already covered in the switch.. case, can also be used in the loops. When a loop statement is encountered in the loops the co

Flow chart, obtain two numbers from thekey board,and determain and display(...

obtain two numbers from thekey board,and determain and display(if either)is the larger of two numbers.

If statement, who to write max if statements in a program

who to write max if statements in a program

Program to design list in c, Program to design list in c: Write a prog...

Program to design list in c: Write a program in c to insert the values in list void main() { int i=0; char a[20]; clrscr(); printf("Enter the line\n");

Miss, Depreciation to a salvage value of 0. For tax purposes an item m...

Depreciation to a salvage value of 0. For tax purposes an item may be depreciated over a period of several years, n. With the straight line method of depreciati

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