C++ 「静态数据成员」和「静态成员函数」的简单认识
Posted 胡文杰
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ 「静态数据成员」和「静态成员函数」的简单认识相关的知识,希望对你有一定的参考价值。
静态数据成员
格式:
static 数据类型 数据成员
如:
static float sum;
静态数据成员为所有同类对象所共享, 属于类对象的集合, 不属于某一对象, 可以用类名访问静态数据成员:
类名::静态数据成员
如:
float Student::sum = 0.0;
访问静态数据成员
对象名.静态数据成员
对象指针 -> 静态数据成员
静态数据成员初始化: 应在类外单独进行, 而且应在定义对象之前进行. 一般在 main() 函数之前, 类声明之后的特殊地带为它提供定义和初始化.
格式:
数据类型 类名::静态数据成员 = 初始值;
编译系统自己默认赋初值为0;
在类外, 私有静态数据成员不能被直接访问, 必须通过共有的成员函数访问.
静态成员函数
静态成员函数属于整个类.
格式:
static 返回类型 静态成员函数(参数表)
如:
static void showCountSumAve();
调用共有成员函数格式:
类名::静态成员函数名(实参表)
对象.静态成员函数名(实参表)
对象指针 -> 静态成员函数名(实参表)
一般而言, 静态成员函数不访问类中的非静态成员函数. 若确实需要, 只能通过对象名(或对象指针, 对象引用)访问该对象的非静态成员.
非静态成员函数有 this 指针, 而静态成员函数没有 this 指针.
注意与「常数据成员」和「常成员函数」之间别搞混。
以上是关于C++ 「静态数据成员」和「静态成员函数」的简单认识的主要内容,如果未能解决你的问题,请参考以下文章