const修饰成员函数

1)
常量限定修饰符,它把一个对象转换为常量(constant)。
const对象必须初始化而且是在定义的同时。
初始化后的const对象(或指针)是不能修改的。

 

2)修饰成员函数
const类对象只能调用const成员函数,不能调用普通成员函数;
const成员函数不能修改类的成员变量,若要修改则用mutable修饰该成员变量。

 

3)例子

class Text{
    private:
        int k;  //mutable int k;
    public:
        Text(int kk){
            k=kk;
        }   
        void printconst() const{
            k=1000;            //不能修改类的成员变量
            cout<<k<<endl;
        }   
        void print(){
            cout<<k<<endl;
        }   
};

int main(){
    Text e(100);
    e.print();
    const Text t=e;
    //t.print();    //不能调用普通成员函数
    t.printconst();
    return 0;
}

 

2. 初始化列表
构造函数除了有名字,参数列表和函数体之外,还可以有初始化列表

foo(string s, int i):name(s),id(i){};    //初始化列表

 

转载于:https://www.cnblogs.com/stellar/p/8892337.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值