C++之类的友元函数

类的友元函数是指在类中声明为友元的函数。友元函数可以访问类的所有成员(包括私有成员),但它本身并不是类的成员函数,因此不需要通过类的对象来调用。友元函数主要用于在类的内部实现对其他类成员的访问和操作。

举例说明:

#include <iostream>
using namespace std;
​
class A {
private:int x;
​
public:A(int a) : x(a) {}
​// 声明友元函数friend void printX(A &obj);
};
​
// 实现友元函数
void printX(A &obj) {cout << "the value of object A:" << obj.x << endl;
}
​
int main() {A a(10);printX(a); // 通过友元函数访问类的私有成员system("pause"); // 暂停程序,等待用户按键继续return 0;
}
​

这个友元函数的参数是一个类A的对象引用,名为obj。函数的作用是输出该对象的成员变量x的值。其中,&表示取地址符,用于获取对象的内存地址;A &obj表示将一个A类型的对象的引用传递给函数printX。在函数内部,通过obj.x可以访问到该对象的成员变量x的值,并将其输出到控制台。

输出结果为:

the value of object A:10

请按任意键继续. . .

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/616958.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

服务器应用相关代码

1&#xff1a;建立基本网络服务器 我们的ESP866-NodeMCU虽然也能实现网络服务器的一些功能&#xff0c;但是毕竟它的运算能力是无法与那些昂贵的服务器电脑相媲美的&#xff0c;因此ESP8266-NodeMCU只能实现一些基本的网络服务功能。网络服务是一个很宽泛的概念&#xff0c;我…

HCIA的交换机(单臂路由)

实现单臂路由的IP自动分配 实验素材&#xff1a; 实现思路&#xff1a; 交换机&#xff1a;创建VLAN10&#xff0c;VLAN20&#xff0c;将0/0/1&#xff0c;2划入相应VLAN&#xff0c;接口使用access模式&#xff0c; 要实现两个交换机之间的通信&#xff0c;须在0/0/3口使用t…

MC-4/11/01/400具有精度高一倍和低速运行时振动较小的优点

MC-4/11/01/400具有精度高一倍和低速运行时振动较小的优点 MC-4/11/01/400具有精度高一倍和低速运行时振动较小的优点 整步驱动模式&#xff1a;在整步驱动模式中&#xff0c;步进电机控制器按照脉冲方向指令对两相步进电机的两个线圈进行循环激磁。每个脉冲会使电机移动一个…

知乎x-zse-96算法分析

声明 本文以教学为基准、本文提供的可操作性不得用于任何商业用途和违法违规场景。 本人对任何原因在使用本人中提供的代码和策略时可能对用户自己或他人造成的任何形式的损失和伤害不承担责任。 如有侵权,请联系我进行删除。 这里只是我分析过程,以及一些重要点的记录,没有…

YOLOv5改进系列(25)——添加LSKNet注意力机制(大选择性卷积核的领域首次探索)

【YOLOv5改进系列】前期回顾: YOLOv5改进系列(0)——重要性能指标与训练结果评价及分析 YOLOv5改进系列(1)——添加SE注意力机制 YOLOv5改进系

ES高级查询

ES中提供了一种强大的检索数据方式&#xff0c;这种检索方式称为Query DSL&#xff0c;这种方式的丰富查询语法让ES检索变得更强大&#xff0c;更简洁。 1.常见查询 1.1查询所有[match_all] match_all关键字&#xff1a;返回索引中的全部文档。 GET /products/_search { &…

【MFC实践】基于MFC向导C++制作计算器(附文件)

一、写在前面1.1 什么是MFC向导&#xff1f;1.2 使用MFC向导制作计算器1.3安装visual studio 2022和MFC插件 二、设计计算器界面1.1 新创建MFC项目1.2 设计计算器界面1.3 添加相关变量1.4 算法的一些问题及解决方式1.5 计算功能的实现1.6 其它功能的实现1.6.1 DEL功能1.6.2 C置…

Linux中创建文件的基本方法

在 Linux 中创建文件的基本方法包括使用命令行工具&#xff0c;如 touch 和 echo 命令。这些命令可以快速创建新文件或修改现有文件的时间戳。 使用 touch 命令&#xff1a;touch 命令是创建空文件的最简单方式。例如&#xff0c;touch filename.txt 会创建一个名为 filename.t…

关于白盒测试,这些技巧你得游刃有余~

对于很多刚开始学习软件测试的小伙伴来说&#xff0c;如果能尽早将黑盒、白盒测试弄明白&#xff0c;掌握两种测试的结论和基本原理&#xff0c;将对自己后期的学习有较好的帮助。今天&#xff0c;我们就来聊聊黑盒、白盒测试的相关话题。 1、黑盒测试的方法和小结 最常见黑盒…

C++标准学习--多线程

在以往多线程的实现的时候&#xff0c;都是自己去亲自创建线程&#xff0c;采用特殊flag 及锁控制线程的运转状态。这无可厚非&#xff0c;但又似乎有重复造轮子的嫌疑。最近发现了一个线程池的轮子&#xff0c;很不错&#xff0c;ZZ一下。 C多线程线程池&#xff08;全详解&a…

免费学习鸿蒙(HarmonyOS)开发,一些地址分享

HarmonyOS万物互联&#xff0c;从华为一系列的操作来看已经与iOS、Android形成三足鼎立之势了。 根据《澎湃新闻》的报道&#xff0c;已有23所985高校和46所211高校加入了鸿蒙班的行列&#xff0c;合计达到了69所国内一流高校。通过鸿蒙班的设立&#xff0c;高校可以为学生提供…

基于BP神经网络的租金预测

目录 摘要 BP神经网络参数设置及各种函数选择 参数设置 训练函数 传递函数 学习函数 性能函数 显示函数 前向网络创建函数 BP神经网络训练窗口详解 训练窗口例样 训练窗口四部详解 基于BP神经网络的租金预测 代码下载:基于BP神经网络的租金预测(代码完整,数据齐全)资源-CS…

【Java】正则表达式( Pattern 和 Matcher 类)

快速入门 Java 提供了 java.util.regex 包&#xff0c;它包含了 Pattern 和 Matcher 类&#xff0c;用于处理正则表达式的匹配操作。 java.util.regex 包主要包括以下三个类&#xff1a; Pattern 类&#xff1a; pattern 对象是一个正则表达式的编译表示。Pattern 类没有公共…

从Scroll怒喷社区用户事件,看L2龙头ZKFair的做事格局

这两天&#xff0c;随着美国SEC正式批准所有11只比特币现货ETF的消息公布&#xff0c;吸引了传统主流增量资金的入场&#xff0c;比特币多头一举将比特币干到了48000刀的位置&#xff0c;并随时向着前高发起了冲击。比特币的强势带动了其他加密资产的保障&#xff0c;整个加密市…

面试常见问题回答干货

1、请你自我介绍一下你自己&#xff1f; 回答提示&#xff1a;一般人回答这个问题过于平常&#xff0c;只说姓名、年龄、爱好、工作经验&#xff0c;这些在简历上都有。其实&#xff0c;企业最希望知道的是求职者能否胜任工作&#xff0c;包括&#xff1a;最强的技能、最深入研…

基于elementUI封装的带复选框el-checkbox的下拉多选el-select组件

效果图&#xff1a; 组件&#xff1a;MultipleSelect.vue <template><el-select v-model"selectValues" v-bind"$attrs" v-on"listeners" multiple placeholder"请选择" style"width: 50%" change"changeSel…

kylin4.0.3升级问题

话接前文&#xff1a; kylin升级(3.0.1-&#xff1e;kylin-4.0.3)-CSDN博客文章浏览阅读941次&#xff0c;点赞29次&#xff0c;收藏12次。原本的cube太多了&#xff0c;换其他OLAP数据库太麻烦。相比之下&#xff0c;升级是一个很好的选择&#xff08;官网有说明内存降低和构…

玩转“资本腾挪之术”,戴震的能链版图扩至何处?

在当下经济恢复发展缓慢&#xff0c;以及消费市场需求疲软的大环境下&#xff0c;企业融资变得越来越艰难。 但即便如此&#xff0c;仍有个别企业却独得众多资本大鳄青睐&#xff0c;这家企业就是能链集团。据不完全统计&#xff0c;2016年成立至今&#xff0c;能链集团已经完…

JavaWEB学习笔记 2024-1-8 --CSS

上一篇 文章目录 2.CSS2.1CSS的引入方式2.2选择器2.2.1基本选择器2.2.2选择器的权重2.2.3其他选择器2.2.3.1群组选择器2.2.3.2后代选择器和父子选择器2.2.3.3兄弟选择器和相邻选择器2.2.3.4属性选择器2.2.3.5伪类选择器 2.3CSS常见的样式2.3.1CSS盒子模型2.3.1.1margin2.3.1.2b…

一站式搞定文案生成、违规检测、一键分发的全流程

随着社交媒体的不断发展&#xff0c;越来越多的企业开始布局新媒体矩阵&#xff0c;从集团总部到区域门店、个人销售&#xff0c;从全品类到细分垂直类目、从单一平台到多平台&#xff0c;试图让品牌影响力覆盖更广泛群体&#xff0c; 当然&#xff0c;随之而来的&#xff0c;如…