如何在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;
}
在上述