如何在C++中使用友元类?

361 篇文章 ¥29.90 ¥99.00
本文介绍了C++中的友元类概念,用于允许一个类访问另一个类的私有成员。通过示例展示了如何声明和使用友元类,以及友元类的限制,强调了在适当情况下使用友元类的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如何在C++中使用友元类?

在面向对象编程中,我们经常需要让一个类的私有成员能够访问另一个类中的私有成员。这就是C++中友元类的作用。本文将介绍如何使用友元类来实现两个类之间的数据共享和访问。

首先,让我们看看如何声明和定义一个友元类。在类声明语句中使用关键字“friend”加上要成为友元类的类名即可。如下所示:

class A {
    friend class B;
    // ...
}

class B {
    // ...
}

在上述代码中,我们将B类声明为A类的友元类。这意味着B类可以访问A类中的所有私有成员。

接下来,让我们看一个使用友元类的例子,其中一个类的私有成员可以被另一个类中的函数所访问。

class B;

class A {
private:
    int num;
public:
    A(int n) {
        num = n;
    }

    friend int getNum(B);
};

class B {
public:
    int getNum(A a) {
        return a.num;
    }
};

int main() {
    A obj(10);
    B b;
    cout << "Num is: " << b.getNum(obj) << endl;
    return 0;
}

在上述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值