对C++中的类的静态数据成员和静态函数成员的认识
来源:互联网 发布:日本皇室 知乎 编辑:程序博客网 时间:2024/06/04 00:54
类包含数据成员和函数成员,它们都可以声明为静态成员。
在声明数据成员的前面加上static就声明了一个静态数据成员,例如:static int a;就声明了一个具有静态生存期的静态数据成员,静态数据成员和普通数据成员的区别是普通数据成员只能用对象访问,而静态数据成员则可以通过类名和对象两种方式访问。静态数据成员又叫做类属性,因为这个数据成员是类拥有的,而不是某一个具体对象拥有。通过类名访问的方式:类名::静态数据成员名。
在声明函数成员的前面加上static就声明了一个静态函数成员,例如:static voidshowCount();
就声明了一个具有静态生存期的静态函数成员,静态函数成员的访问方式也有两种,通过类名和对象,通过类名的方式:类名::函数成员。静态函数成员也是属于整个类所共有的,不是某一个对象的,所有对象都对它进行维护和使用。静态函数成员可以直接访问类的静态成员,如果要访问非静态成员,必须通过对象名,举个例子:
class A{
public:
static void f(A a);
……
private:
int x;
}
void A::f(A a){
cout<<x; //这个不对,不能直接访问。
cout<<a.x; //这个对,要通过对象访问。
};
通过这个例子大家可以看出用静态函数成员访问非静态成员必须要通过对象名。在实际运用中,静态函数成员通常用来访问静态成员。
为什么要通过对象名来访问呢?这是因为非静态成员的访问必须经过对象才能调用,而在普通的函数成员调用数据成员时,实际上也是隐含了通过目的对象访问数据成员,因此,用静态函数成员访问非静态成员时,必须指出对象,才能访问非静态成员。
以上就是我对类的静态数据成员和静态函数成员的一些认识。
- 对C++中的类的静态数据成员和静态函数成员的认识
- 类的静态数据成员和静态成员函数浅析
- 类的静态数据成员和静态成员函数
- 类的静态成员函数和静态数据成员
- 类的静态成员函数和静态数据成员
- 静态成员(静态成员函数,静态数据成员)的特性
- 关于编译器对c++ 类静态成员、静态成员函数、非静态成员函数的处理
- 类的 静态成员 --- 静态成员变量 、 静态成员函数
- 类的静态成员函数和静态成员变量
- 25-类的静态成员变量和静态成员函数
- C++中的静态数据成员和静态成员函数
- C++中的静态数据成员和静态成员函数
- c++中的静态成员函数和静态数据成员
- static(c++)静态数据成员和静态成员函数
- C++_静态数据成员和静态成员函数
- 静态数据成员和静态成员函数
- 静态数据成员和静态成员函数
- 静态成员数据和静态成员函数
- ActiveMQ系列之一:ActiveMQ简介
- 小白书训练-Where's Waldorf?
- jQuery 文本编辑器插件 HtmlBox 使用
- Android adb shell 获得点击屏幕的位置坐标
- 循环-01. 求整数段和(15)
- 对C++中的类的静态数据成员和静态函数成员的认识
- 字符串的简单实用
- Openfire(一)基础介绍
- μC/OS-II事件标志组的入门级使用方法
- QT常用代码之加载动态库和弹出对话框
- 微信抢票——迭代周期一结束后感想
- 7 天打造前端性能监控系统
- HangOver(杭电1056)
- 使用并查集UnionFind和优先队列PriorityQueue实现Kruskal算法