静态C ++类成员何时初始化?

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

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

给出了一个演示C ++中静态类成员的程序,如下所示。

示例

#include <iostream>

using namespace std;

class Example {

   public :

   static int a;

   int func() {

      cout << "The value of static member a: " << a;

   }

};

int Example::a = 20;

int main() {

   Example obj;

   obj.func();

   return 0;

}

输出结果

上面程序的输出如下。

The value of static member a: 20

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

在类Example中,静态类成员是a。该函数func()显示a的值。显示此代码段如下。

class Example {

   public :

   static int a;

   int func() {

      cout << "The value of static member a: " << a;

   }

};

int Example::a = 20;

在函数中main(),创建了Example类的对象obj。然后func()调用该函数以显示a的值。显示此代码段如下。

int main() {

   Example obj;

   obj.func();

   return 0;

}

以上是 静态C ++类成员何时初始化? 的全部内容, 来源链接: utcz.com/z/322015.html

回到顶部