本篇为博主在学习中遇到的问题,仅以此记录并供以后复习使用,同时希望能够帮助到有类似问题的同学。

一、同一个对象的类成员函数相互调用

如图所示,类成员函数fun2直接调用类成员函数fun,最终如果对象调用fun2则会输出fun1,证明能够如此调用。

二、参数是另一个对象的类成员函数,调用参数中对象的成员函数

1、首先第一种情况,如果是const 引用的情况

可以看到无法成功调用,报错信息指出将const 转化为&,权限扩大,因此无法调用,如果仍想这样调用,则需要对程序稍作修改。

具体修改方法有两种:

1、


class test {
public:void fun() {cout << '1' << endl;}void fun2(test& ano) {ano.fun();}
};

将const删除,这样就不会有权限扩大的问题

2、

class test {
public:void fun() const {cout << '1' << endl;}void fun2(const test& ano) {ano.fun();}
};

在被使用到的成员函数后面加const变为只读函数,而不改变类内成员的值,这样,也不会有权限扩大的问题,但是仅仅只有带const的只读函数能够被调用。

c++中类成员函数的相互调用相关推荐

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

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

  2. C#代码与javaScript函数的相互调用

    C#代码与javaScript函数的相互调用 问: 1.如何在JavaScript访问C#函数? 2.如何在JavaScript访问C#变量? 3.如何在C#中访问JavaScript的已有变量? 4 ...

  3. .net中C#代码与javaScript函数的相互调用问题

    .net中C#代码与javaScript函数的相互调用问题. 问: 1.如何在JavaScript访问C#函数? 2.如何在JavaScript访问C#变量? 3.如何在C#中访问JavaScript ...

  4. js和cs的值相互传递和函数的相互调用

    转载于:Js与cs的值相互传递和函数的相互调用 cs传值给js aspx代码: <%@ Page Language="C#" AutoEventWireup="tr ...

  5. WinCC项目函数之间相互调用

    采用WinCC作为上位机框架进行开发工业控制界面,全局脚本中C-Editor进行开发工业控制模型. 我们用C#或者C++时,方法之间调用.类调用等等,比较灵活.其实WinCC和C#或者C++一样. 项 ...

  6. 成员函数的选择调用一一常成员函数 (12 分)

    成员函数的选择调用一一常成员函数 (12 分) 类中的常对象选择调用常成员函数.语法要点: 如果将一个对象说明为常对象,则通过该常对象只能调用它的常成员函数, 而不能调用其他成员函数.补充完整复数类的 ...

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

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

  8. C++中类成员函数的重载、覆盖和隐藏的区别,超清楚!

    转载:https://www.cnblogs.com/liubo1/p/5925746.html 1.成员函数被重载的特征: (1)相同的范围(在同一个类中): (2)函数名字相同: (3)参数不同: ...

  9. C++ Primer 5th笔记(chap 19 特殊工具与技术)将成员函数用作可调用对象

    1. 通过一个指向成员函数的指针进行函数调用 利用.*或者->*运算符将该指针绑定到特定的对象上. 与普通的函数指针不同,成员指针不是一个可调用对象 不支持函数调用运算符. 不能直接将一个指向成 ...

最新文章

  1. 2019年上半年收集到的人工智能自然语言处理方向干货文章
  2. (0008) iOS 开发之iTunes Connect 显示可供销售,AppStore 不显示新版本
  3. 淡淡说说技术人员创业
  4. 洛谷P1162 填涂颜色
  5. linux mysql操作知识--收藏
  6. 数据库BCP命令导入导出数据
  7. ASP.NET Core托管运行Quartz.NET作业调度详解
  8. Linux实战 | 搭建Linux(CentOS6.8版)_1
  9. middleware什么意思_middleware
  10. 如何高效并快速的掌握NLP与深度学习路径?来公众号寻找经验吧~
  11. 13_展示商品的详情
  12. python echarts接口_GitHub - jllan/pyecharts: Python Echarts Plotting Library
  13. 小区广播机制(MIB、SIB)
  14. 电脑设置显示文件扩展名(文件后缀名)
  15. FinalShell显示文件夹
  16. STAF 删除文件操作
  17. 视线估计(Gaze Estimation)简介概述
  18. 易經大意(1) 三和 韓長庚 著24
  19. 微信小程序WIFI检测
  20. 【空间规划符号库】国土空间规划_制图规范+制图样式

热门文章

  1. 谷歌adsense怎么赚钱_借助Google AdSense为您的网站赚钱
  2. 春晚小宫女唐奕霖大有来头,春晚后台享特权
  3. Java猜拳小游戏(面向对象版)
  4. html首行缩进怎么弄,css首行缩进怎么弄
  5. 树莓派zero w 官方CSI摄像头配置
  6. Unity下的日式卡通渲染实现-阴影篇(二)
  7. 图像增强之——同态滤波
  8. MUI浮动屏幕,苹果5s,苹果6s地址列表页面不显示
  9. 概率密度函数、概率分布函数、概率质量函数
  10. mysql (errcode 13)_MySQL 启动报错:File ./mysql-bin.index not found (Errcode: 13)