美文网首页
C++的const修饰符

C++的const修饰符

作者: StevenHD | 来源:发表于2020-11-29 00:02 被阅读0次

    一、const概念

    1.1 const修饰数据成员

    • 修饰数据成员的时候,初始化的位置只能在参数列表里面。
      初始化的位置只能在参数列表中

    下一个就非常显而易见了——

    const修饰的数据成员,不能被修改

    1.2 const修饰成员函数

    • 位置:声明之后,实现body之前


      const的位置
    • 特点:

    1. 不会修改数据成员(这里的数据成员指的是类的数据成员,而不是const函数中自定义的变量)
    1. 可以访问const和非const数据成员,但是不能修改非const数据成员(const数据成员当然是不能被修改的啊)
      x是非const,也不能被修改
    1. 只能访问const成员函数
    两个函数都是const
    1. 构成重载


      dis()函数被重载

    但是——

    • const成员对象只能调用const成员函数
    • 非const成员对象优先调用非const成员函数,如果没有非const成员函数,就调用const成员函数

    1.3 const修饰类对象

    • const修饰函数,是从函数的层面,不修改数据

    体现在,【const函数】只能调用const函数,不能调用非const函数

    • const修饰对象,是从对象的层面,不修改数据

    体现在,const对象只能调用const成员函数


    注:

    【const】和static, virtual这两个关键字不一样,【const】修饰成员函数的时候,必须声明和实现都加上
    但是static, virtual这两个关键字只有在声明时候需要加,实现的时候不要加。

    相关文章

      网友评论

          本文标题:C++的const修饰符

          本文链接:https://www.haomeiwen.com/subject/vlpivktx.html