【ThinkingInC++】46、特定的数据成员可以在一个const对象里被改变

/**
* 书本:【ThinkingInC++】
* 功能:声明关键字mutable,指定一个特定的数据成员可以在一个const对象里被改变
* 时间:2014年9月11日07:47:07
* 作者:cutter_point
*/


class Z
{
    int i;
    mutable int j;
public:
    Z();
    void f() const;
};

Z::Z():i(0), j(0) {}

void Z::f() const
{
//!    i++;    //没有声明是mutable,所以没法修改,并且这个函数是const的
    j++;    //这个声明了是mutable所以就可以修改
}

int main()
{
    const Z zz;
    zz.f();

    return 0;
}


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。