C++——static成员

static成员

(一)概念

  在C语言中,static可以修饰局部变量、全局变量、函数

修饰局部变量:增加了局部变量的声明周期;
修饰全局变量:限定全局变量只能在本源文件中使用;
修饰函数:限定该函数只能在本源文件中使用;

  在C++中,static可以用来修饰成员变量和成员函数;

(二)static成员变量

  1、概念
  static修饰成员变量是一个类内部的全局变量,所有对象共享,可以看做类的成员,此变量将不再依赖于对象而存在,而是依赖于类而存在;
  static成员不会存放在对象中,存放在静态数据区;
  2、定义与初始化

class A
{
private:
	static int _count;
};
int A::_count = 0;

  static成员变量在类内定义,必须在类外进行初始化,格式如上方代码;
  3、访问方式

1、通过对象访问:对象.static成员, 对象指针->static成员
2、通过类名访问:类名::static成员(普通成员不能通过此方法访问)

(三)static成员函数

  1、概念
  static成员函数的概念与static成员变量一样,同样是一个类内部的全局函数,所有对象共享;
  2、定义
  static成员函数在类内定义与实现;
  3、访问方式
  同static成员变量一样,也是通过对象和类来访问;

(四)注意

1、静态成员为所有类对象共享,不属于某个具体实例;
2、静态成员函数没有this指针,不能访问任何非静态成员;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值