C++中如何初始化静态成员变量

例子,比如我们有一个People类,其中包含一个private的静态成员变量num

class People{
    private:
        static int num;
    public:
        void show(){
           cout<<num<<"\n";
        }
}

静态成员变量是整个类所共有的,无法通过构造函数对之初始化,我们需要在类外对其进行定义和初始化。

int People::num=0;

即使num是private的,我们也可以这么写。

扩展一下:C++11已经支持在类声明时对非静态成员变量或静态成员常量进行初始化。以下初始化都是合法的:

class People{
    int num=0;
}
class People{
    const static int num=0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值