c++的静态数据成员初始化方法

类的静态成员变量初始化应该在类外进行

注意,不能在头文件初始化,只能在cpp文件中初始化,如果在声明中初始化,
在其它地方引用时相当于多次定义。

静态数据成员的使用方法和注意事项如下:

1、静态数据成员在定义或说明时前面加关键字static//静态变量的定义
2、静态成员初始化与一般数据成员初始化不同。静态数据成员初始化的格式如下:
    <数据类型><类名>::<静态数据成员名>=<>  //静态变量的初始化

例如:

class A
{  
private:
    static int count ; // 类内声明
};

int A::count = 0 ; // 类外初始化,不必再加static关键字

能在类中初始化的成员只有一种,那就是静态常量成员。

错误做法:
class A
{  
private:
    static int count = 0; // 静态成员不能在类内初始化
};
错误做法:
class A
{  
private:
    const int count = 0; // 常量成员也不能在类内初始化
};
正确做法:
class A
{  
private:
    static const int count = 0; // 静态常量成员可以在类内初始化
};
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值