const表示成员函数不会修改类中的数据成员。

规则:

  • 在类中被const 声明的函数只能访问const 函数,而非const 函数可以访问任意成员函数。
  • 在成员函数中不管数据是否具有const 属性,编译器检查的的是是否有修改(赋值,自增自减等)
  • 加上mutable修饰符的数据成员在任何情况下通过任何手段都可以进行修改,所以在const函数也是可以进行修改的

成员函数后面加上const的作用相关推荐

  1. const对象只能调用const成员函数、不能调用非const成员函数;非const对象可以调用const成员函数

    引发原因: 由调用成员函数时隐式传入的当前对象的this指针引起. 1. 非const成员函数中的隐式参数:classA* this 2. const成员函数中的隐式参数:const classA* ...

  2. C++ const对象与非const对象的相互调用、const成员函数与非const成员函数的相互调用

    1)const对象可以调用非const成员函数吗? 答:不能.const修饰的对象实则修饰的是该对象的this指针,并且const修饰的成员不能进行修改,如果使用const调用非const成员函数,可 ...

  3. C++成员函数中的const修饰符

    在一些C++源码中经常见到const修饰的函数,这里的const与放的位置无关,也就是下面三种写法是等效的,只不过通常使用第一种写法,可以编写函数进行测试,这里的const虽然写在了函数的位置,其实是 ...

  4. 【C++】const成员函数

    形式: 在成员函数后面加上const限定词,表示不会修改对象内容. 例如Circle类: class Circle {double r; public:Circle(double newr){r = ...

  5. C++ const成员函数(常成员函数)

    1 定义 const成员函数(常成员函数):成员函数()后加上const,如:void print()const. 2 目的 如果一个成员函数不对对象的任何成员数据的进行修改(最常见的为打印成员信息的 ...

  6. 常成员函数函数和返回值为常量的函数

    常成员函数,它的形式是在成员函数后面加上const修饰,它是为了防止特定函数改变本类对象的数据成员而产生的,目的就是保护数据成员.在常成员函数中,你不能改变数据成员的值,你也不能在常成员函数中调用非常 ...

  7. 类的成员函数与内联以及静态成员

    一.类的成员函数与内联 在类内定义的所有函数都自动称为内联函数.如果在类内声明,在类外定义,也可以定义为内联函数.在定义函数时添加inline限定符.. (1)此外,内联函数一定要和函数定义在一起,否 ...

  8. c++ 函数声明后面加上 const 有什么作用

    C++在函数声明时,后面跟个const是限定函数类型为常成员函数, 常成员函数是指不能改变成员变量值的函数. 例如"double d() const;",其中的其中的"c ...

  9. c/c++教程 - 2.4.3 this指针作用,链式编程思想,空指针访问成员函数,const修饰成员函数,常函数,常对象

    目录 4.3 C++对象模型和this指针 4.3.1 成员变量和成员函数分开存储 4.3.2 this指针概念(非常重要) 4.3.3 空指针访问成员函数 4.3.4 const修饰成员函数 相关教 ...

最新文章

  1. 【每日DP】day4 P1417 烹调方案(奇怪的01背包增加了)难度⭐⭐⭐
  2. JAVA16版本.JDK16关于TCP和UDP的优化
  3. ASP.NET MVC SSO单点登录设计与实现
  4. python2 python3 import,从python2到python3的导入处理/模块的更改?
  5. python数据抓取课程_Python爬虫入门教程 21-100 网易云课堂课程数据抓取
  6. android104 帧动画,补间动画,属性动画
  7. Async/Await FAQ
  8. 苏宁易购:2021年度预计商品采购总金额增至不超120亿元
  9. arcgis图层叠加不匹配
  10. 关于.Net WebProxy【转】
  11. SKPlayer -- 一个超级简单好用的音乐插件+CSS+HTML+JS
  12. ucore Lab 1 系统软件启动过程
  13. 开源项目的版权声明已无存在必要?
  14. java判断天数_Java判断两个日期相差天数的方法
  15. 共享单车租用频次分析
  16. MySQL创建数据库、数据表 | 零基础自学SQL课程系列Day3
  17. macOS 开发 - Move to Applications folder
  18. 协会元宇宙产业园基地孵化器授牌案例:循环经济元宇宙加速基地
  19. JMS之——ActiveMQ消息持久化
  20. python有道字典_Linux下自制有道词典 - python 解密有道词典JS加密

热门文章

  1. 卷积神经网络(CNN)与特殊的卷积
  2. c++ 请抛弃匈牙利命名法 - 变量命名代码风格的建议。
  3. 利用MyBatis的动态SQL特性抽象统一SQL查询接口
  4. KingPaper初探ThinkPHP3.1.2之扩展函数库和类库的使用(四)
  5. linux 认证考试 题库,Linux认证考试题库及答案
  6. mysql主从安装配置_如何安装和配置mysql主从同步
  7. 学计算机的误解,让人误解的六大专业
  8. ubuntu 14.04 java_Ubuntu14.04下配置Java环境
  9. python字典的值可以是字典吗_python字典的值可以是字典吗
  10. php post请求后端拿不到值_PHP Post获取不到非表单数据的问题解决办法