How to initialize private static members in C++?

Here we will see how to initialize the private static member variables initialization in C++. We can put static members (Functions or Variables) in C++ classes. For the static variables, we have to initialize them after defining the class.

To initialize we have to use the class name then scope resolution operator (::), then the variable name. Now we can assign some value.

The following code will illustrate the of static member initializing technique.


#include <iostream>
using namespace std;
class MyClass{
      static int st_var;
         st_var++; //increase the value of st_var when new object is created
      static int getStaticVar() {
         return st_var;
int MyClass::st_var = 0; //initializing the static int
main() {
   MyClass ob1, ob2, ob3; //three objects are created
   cout << "Number of objects: " << MyClass::getStaticVar();


Number of objects: 3