C++中static关键字的用法

C++中的static关键字是从C中继承的。

(1)在类中的使用static关键字声明的变量和函数不属于该类的任何一个具体的对象,而是属于这个类的所有对象。

对象A和B对可以对myclass中的整型变量i进行修改,但是修改的动作是针对对象A和B的。也就是说A.i==B.i是true的。

例如:

class  myclass
{
private :
  
static   int  i;
public :
  
static   void   func();
};

int  main()
{
  myclass A,B;
  ...
  ...
}

(2)静态成员变量和静态成员函数是可以通过类名直接进行访问的。类中的静态成员函数只能够访问该类的静态的成员变量。

myclass::i;

myclass::func();

(3)在类中使用static声明成员变量和成员函数后,在定义时不需要再次适用static。但是静态成员变量必须在类外进行定义。

例如:

class  myclass
{
private :
  
static   int  i;
public :
  
static   void  func();
}

int  myclass::i;
void  myclass::func();

(4)静态数据成员的定义不能放在头文件中,必须放在源文件中。如果有多个源文件,只能选择其中的一个进行放置,不能同时放置在多个源文件中。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值