在 C++ 类中初始化静态变量
我们将在这篇短文中学习如何在 C++ 中初始化静态变量。
在 C++ 中初始化静态变量
C++类中静态变量的初始化就是给静态变量赋值的过程。
所有类对象都可以访问静态成员。 如果不存在其他初始化,则在创建第一个对象时所有静态数据都将初始化为零。
尽管我们不能将其包含在类定义中,但我们可以通过重新声明静态变量并使用作用域解析运算符确定其类从属关系来在类外部初始化它。 通常,初始化可以通过两种方式完成。
- 隐式地,通过将它们定义为常量。
- 显式地使用“static”关键字并赋值。
仅当我们确定所有静态变量已预先初始化时,才应使用隐式初始化。 否则,我们应该使用带有 static 关键字的显式初始化。
代码示例:
#include <iostream>
using namespace std;
class Sam {
public:
static int demo;
Sam(int x = 1, int y = 2, int z = 3) {
X= x;
Y = y;
Z = z;
}
private:
double X;
double Y;
double Z;
};
int Sam::demo = 7;
int main(void) {
Sam sam1(6, 7, 8);
cout << "Demo: " << Sam::demo << endl;
return 0;
}
输出:
Demo: 7
常量和静态变量之间的区别
在 C++ 中,变量是计算机内存中存储位置的名称,可以存储不同的数据类型,例如数字和文本。 这些名称称为标识符。
存储在变量中的数据可能会随着时间而改变。 这种类型的变量称为动态或动态类型。
另一种变量类型称为常量或常量类型。 存储在这种变量中的数据永远不会随着时间的推移而改变,常量通常用于在程序或函数开始时定义对象的属性和参数。
常量使用 const 关键字声明,只能在声明时或在函数内部初始化。 static 关键字仅创建变量一次,同一文件中的所有函数都可以访问该变量。
相关文章
Arduino 复位
发布时间:2024/03/13 浏览次数:315 分类:C++
-
可以通过使用复位按钮,Softwarereset 库和 Adafruit SleepyDog 库来复位 Arduino。
Arduino 的字符转换为整型
发布时间:2024/03/13 浏览次数:181 分类:C++
-
可以使用简单的方法 toInt()函数和 Serial.parseInt()函数将 char 转换为 int。
Arduino 串口打印多个变量
发布时间:2024/03/13 浏览次数:381 分类:C++
-
可以使用 Serial.print()和 Serial.println()函数在串口监视器上显示变量值。