C++中static修饰成员静态数据成员和静态成员函数的概念和用法
时间: 2024-03-07 21:54:07 浏览: 89
C++静态成员函数小结.doc
在C++中,static修饰成员有两种情况:静态数据成员和静态成员函数。
静态数据成员:静态数据成员是指在类中被声明为静态的变量,它被整个类共享,而不是每个对象单独拥有。静态数据成员的定义必须在类外进行,可以通过类名和作用域解析运算符::来访问。静态数据成员的初始化在程序启动时完成,而不是在对象被创建时进行。静态数据成员一般用于存储与类相关的信息,如类的计数器、类的名称等。
静态成员函数:静态成员函数是指在类中被声明为静态的函数,它不属于任何对象,而是属于整个类。静态成员函数不能访问非静态成员变量和非静态成员函数,因为它们没有this指针。静态成员函数一般用于实现与类相关的全局函数,如工具类函数、工厂函数等。
使用静态数据成员和静态成员函数可以提高程序的效率,减小程序的内存开销。但需要注意,静态数据成员和静态成员函数都不能访问非静态成员,因此需要根据具体情况选择是否使用。
阅读全文