标签:成员 函数 类的成员 类成员 初始 static 无法 this指针 对象
声明类的静态成员
通过将类的成员前面加上static关键字,使得类成员成为其静态成员,静态成员可以是private也可以是public的。
静态成员可以是常量,引用,指针,类类型等。
类的静态成员存在于任何对象之外,对象中不包含任何与静态成员相关的数据。类似的类的静态成员函数,他们
不包含this指针,因此静态成员函数不能声明为const的,我们不能在静态成员的函数体内显式或者引式的调用this指
针。
定义静态成员
首先是静态成员函数,我们可以在类的内部定义静态成员函数。但是如果在类的外部定义静态成员函数的话,则
static不能重复,其只能出现在类内的声明当中。
类的静态数据成员不属于任何一个对象,因此其不是在创建对象的时候被定义的,因此静态数据成员不能由类的
构造函数来进行初始化。一般而言我们不在类的内部初始化静态成员,相反的在类的外部定义和初始化静态成员。一
个静态数据成员只能够定义一次。
通常类的静态成员不在类的内部进行初始化,但是整型的静态常量数据成员可以在类内进行初始化,即static const
int 类型的静态常量数据成员可以在类内初始化。
静态成员所能适用的具体场景:
1 静态数据成员可以是不完全的类型,比如说在定义一个类的过程当中,静态成员可以声明成其所属的类型,而非静态
成员只能声明成所属类的指针或应用。
2 静态数据成员可以使用作为默认的实参,非静态数据成员无法使用来作为默认的实参。
标签:成员 函数 类的成员 类成员 初始 static 无法 this指针 对象
原文地址:https://www.cnblogs.com/wangkaia/p/11963536.html