// 定义两个类 A 和 B,其中 B 是 A 的友元类
#include <iostream>
using namespace std;
class B; // 前向声明
class A {
private:
int value;
public:
A(int v) : value(v) {}
// 声明类 B 为类 A 的友元类
friend class B;
};
class B {
public:
void printValue(A& a) {
// 由于 B 是 A 的友元类,所以可以访问 A 的私有成员
cout << "Value in A: " << a.value << endl;
}
};
int main() {
A a(10);
B b;
b.printValue(a); // 输出: Value in A: 10
return 0;
}
class A 中有一个私有成员 value。class B 被声明为 class A 的友元类 (friend class B),因此 B 可以访问 A 的所有私有和保护成员。class B 中的 printValue 函数中,可以直接访问 A 对象的私有成员 value。上一篇:c++优先队列用法
下一篇:new在c++语言中的意思
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站