static关键字和const关键字的作用
4 分钟阅读
•
449 字
+
512 词
参考答案
static
和
const
是
C++
中两个常用的关键字, 有以下作用:
-
static关键字: 用于 控制变量和函数的生命周期、作用域和访问权限。- 声明静态变量:静态变量的 生命周期直到程序结束 。当在函数内部声明静态变量时,即使函数执行完了也不会释放它,下次调用该函数时会保留上次的状态。
-
在类中,被static声明的成员被称为静态成员。
- 静态成员变量:在类中使用static关键字修饰的成员变量,表示该变量属于类而不是类的实例,所有实例共享同一份数据
- 静态成员函数:在类内使用static关键字修饰的成员函数, 所有对象共享同一个函数 ; 静态成员函数只能访问静态成员变量 ; 静态成员函数调用可以不需要通过创建类的实例,而是直接通过类名调用 。
-
static变量如果被多个线程访问,需要特别注意线程安全问题。
-
const: 关键字用于定义常量,即 一旦初始化后其值不能被修改 :- 常量变量 :声明变量,使 变量的值不能修改 (只读)
- 常量成员函数 ,表示该函数不会修改对象的成员变量
-
常量指针
:可以指向一个
const类型的值,或者是一个指向const值的指针,表明指针指向的值不能通过这个指针被修改。 -
const变量由于其不可变性,天然具有线程安全性。
-
有时候
static和const可以组合使用,如static const变量,表示一个静态的常量。
static
关键字用于创建类的静态成员,而
const
关键字用于定义常量。