一、静态成员变量
静态成员:
在类定义中,它的成员(包括成员变量和成员函数),这些成员可以用关键字static声明为静态的,称为静态成员。
-
静态成员变量需要在类外分配空间,static 成员变量是在初始化时分配内存的,程序结束时释放内存。
-
静态成员函数只能访问
静态成员函数
和静态成员变量
,没有this
指针。 -
静态成员是整个类共有的,通过
对象名和类名
都可以访问,不计入类的字节数。 -
在一个类中,若将一个成员变量声明为
static
,这种成员称为静态成员变量
。静态成员变量,属于某个类,所有对象共享
。 静态变量,是在编译阶段就分配空间
,对象还没有创建时,就已经分配空间。 -
静态成员变量必须在类中声明,在类外定义,static 成员变量属于类,不属于某个具体的对象。
static
成员变量必须在类声明的外部初始化。 -
静态数据成员不属于某个对象,在为对象分配空间中不包括静态成员所占空间。
-
静态数据成员可以通过
类名或者对象名
来引用。 -
在编译阶段分配内存,存储于全局区,。
-
所有对象共享一份数据,因此不属于特定哪个某个对象。(非静态成员变量隶属于特定的对象)类内声明,类外初始化。
//静态成员变量:在一个类中,在一个成员变量前面加static,在类中声明,类外定义
class Person
{
public:
static int m;//类内声明
};
int Person::m = 10; //类外初始化
void test()
{
Person p1;
p1.m = 20;
cout
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?