声明类的 成员函数为友元
时间: 2024-03-24 14:35:53 浏览: 51
友元成员函数
在C++中,可以将一个类的成员函数声明为另一个类的友元函数。这样,该类的成员函数就可以访问另一个类的私有成员。
例如,假设有两个类A和B,A类中有一个私有成员变量x,B类中有一个成员函数foo(),如果我们希望foo()可以访问A类中的x,可以在A类中将foo()声明为友元函数,如下所示:
```c++
class A {
private:
int x;
friend void B::foo(); // 将B类的成员函数foo()声明为A类的友元函数
};
class B {
public:
void foo() {
A a;
a.x = 10; // 在B类的foo()函数中可以访问A类的私有成员变量x
}
};
```
需要注意的是,声明类的成员函数为友元函数时,需要在另一个类的定义之前进行声明。
阅读全文