C ++静态成员变量及其初始化

静态C ++成员变量是使用static关键字定义的。类中的静态成员变量由所有类对象共享,因为在内存中只有它们的一个副本,而与该类的对象数量无关。

如果没有以任何其他方式初始化静态类成员变量,则在创建类的第一个对象时将其初始化为零。

给出了一个演示静态成员变量及其在C ++中的初始化的程序,如下所示。

示例

#include <iostream>
using namespace std;
class Demo {
   public :
   static int num;
   int display() {
      cout << "The value of the static member variable num is: " << num;
   }
};
int Demo::num = 100;
int main() {
   Demo obj;
   obj.display();
   return 0;
}

输出结果

上面程序的输出如下。

The value of the static member variable num is: 100

现在让我们了解上面的程序。

在类Demo中,静态类成员变量为num。函数display()打印num的值。显示此代码段如下。

class Demo {
   public :
   static int num;
   int display() {
      cout << "The value of the static member variable num is: " << num;
   }
};
int Demo::num = 100;

在函数main()中,创建了Demo类的对象obj。然后调用函数display()来显示num的值。显示此代码段如下。

int main() {
   Demo obj;
   obj.display();
   return 0;
}