• const限定符


    1 const的作用

        便于进行类型检查。可以保护被修饰的东西。避免不必要的内存分配。为函数重载提供一个参考。

    2 const成员函数

        const成员函数只能访问数据成员的值,而不能修改他。

    #include <iostream>
    using namespace std;
    
    class Test
    {
    public:
        Test(int x) :x_(x)
        {
    
        }
        void GetX()
        {
            cout << "GetX()" << endl;
        }
        void GetX() const  //const成员函数,并与上边的函数构成重载
        {
            cout << "GetX() const" << endl;
        }
    private:
        int x_;
    };
    int main(void)
    {
        Test t(10);
        t.GetX();//输出GetX(),如果去掉函数GetX(),则输出GetX() const
    
        const Test t1(20);
        t1.GetX();//输出GetX() const;如果去掉GetX() const,会报错
    
        return 0;
    }

        非const对象既可以调用非const成员函数也可以调用const成员函数,优先非const;const对象只能调用const成员函数,不能调用非const成员函数。(很好理解,非const函数很可能会改变对象的成员,但对象是const的,不能被改变)

    3 mutable关键字

        用mutable修饰的数据成员可以被const成员函数或const对象修改。

  • 相关阅读:
    JS运算符
    JS基础
    0507-弹性盒子
    0506css3(2D、3D)动画
    CSS3边框
    0503-格式与布局
    0502-边框边界
    0502-其他html标签
    0428-专题块状元素
    mysql 数据库学习
  • 原文地址:https://www.cnblogs.com/lulu10922/p/5803419.html
Copyright © 2020-2023  润新知