C++中static的一点用法

本文探讨了C++中static关键字的应用,包括static数据成员如何不影响对象大小、私有const变量的正确初始化方式、静态成员函数的使用限制,以及类内static变量的行为特点。
1: static数据不会影响对象的大小


static 不会影响 对象的数据大小例如:
class AA
{
private:
  int a;
  static int bb;
};


AA aa;


sizeof(aa)=4个字节不影响对象的大小;




2:私有const变量的初始化


class AA
{
private:
  int aa;
  const int aa1;
public:
 AA():aa1(10),aa(20){};


};


3:静态成员函数只能访问静态变量


class AA
{
private:
int aa;
static int bb;
public:
AA(int aa);
   static void display(); 
};


4:类成员内的static变量会增加


#include <iostream>
using namespace std;
class AA
{
private:
int x;
int y;
public:
void sss();
};
void AA::sss()
{
static int aa=0;
aa++;
cout<<"aa = "<<aa<<endl;
}


int main(void)
{
AA a1;
AA a2;
AA a3;
a1.sss();
a2.sss();
a3.sss();




return 0;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值