您当前的位置: 首页 >  c++

我什么都布吉岛

暂无认证

  • 2浏览

    0关注

    292博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

C++ 类的静态成员

我什么都布吉岛 发布时间:2019-03-14 00:11:30 ,浏览量:2

一、什么是静态成员?

类实例“共享”的资源(成员数据或者函数),声明的方法是资源前加上static关键字,此外应该注意静态成员必须在类内声明,类外初始化[1]。

二、为什么要用静态成员?
  • 节省空间 (所有类静态变量都将会使用同一个空间)
  • 方便修改(发生变化的时候,仅需修改一处)
三、怎么访问静态?

静态成员首先是类的成员,类的成员都将会受到访问控制;其次作为特殊的成员,他还可通过类名访问。类的使用者,可以通过:

  • 类名访问(::)
  • 实例化对象访问(A.XX)

访问静态成员,对于类的编写者,仅需注意初始化时机及其共享属性,除此,别无二样。

class A
{
private:
	static int a;
};

int A::a = 4396;
四、其他使用事项

类的静态成员函数的函数体内只能访问静态成员变量。

[1] 静态数据成员之所以不能在类内初始化,实例创建时不能每次都初始化,否则就没有属性共享这一说了。

20201030 对静态成员不能再类内初始化做了一定的解释;重新表述了文字,增加了初始化静态成员的具体例子。

20211230 为什么静态成员函数只能访问静态成员?表意自洽,静态方法就是所有类共有的,你修改了一个非共有的变量,那么不应该用静态方法应该用普通方法。

关注
打赏
1658157489
查看更多评论
立即登录/注册

微信扫码登录

0.0451s