C++:友元

C++的友元机制允许类或函数访问其他类的私有或受保护成员,打破封装性。友元可以是友元函数或友元类。友元函数是独立的函数,但能访问特定类的私有成员。友元类则可以访问另一个类的私有成员,增强类间合作。本文通过实例解释了友元函数和友元类的用法。
摘要由CSDN通过智能技术生成

友元(friend)是 C++ 中的一个关键字,用于建立类之间的友好关系;通过友元关系,一个类可以授权其他类或函数访问其私有成员或受保护成员,从而突破了 C++ 中的封装性;友元可以是类或函数,可以出现在类的声明中,也可以出现在类的外部,在声明中,友元关键字表明了某个函数或类是另一个类的友元,从而被授权访问该类的私有或受保护成员。

友元访问权限

友元关系为双向授权,即如果类 A 是类 B 的友元,但是类 B 不一定是类 A 的友元。
友元关系不具有传递性,即如果类 A 是类 B 的友元,而类 B 又是类 C 的友元,类 C 并不会自动成为类 A 的友元。

友元函数

友元函数是一个不属于任何类的普通函数,但被授权访问一个或多个类的私有或受保护成员。通过友元函数,可以实现对类的封装性的一定程度的突破,允许外部函数直接访问类的私有成员,以执行特定的操作。

class FriendTest
{
public:
   //声明友元函数
friend void getPriNum(FriendTest &obj);
   
private:
    int nPriNum = 200;
  • 8
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值