友元函数怎么使用,能不能给我举个例子,并附上详细的解释
时间: 2024-05-08 13:19:54 浏览: 93
c++关于友元函数的例子.pdf
友元函数是可以访问类的私有成员的非成员函数,它需要在类中进行声明。以下是一个例子:
```
class A {
private:
int x;
friend void display(A obj);
};
void display(A obj) {
cout << obj.x << endl;
}
int main() {
A obj;
obj.x = 5;
display(obj);
return 0;
}
```
在上述代码中,我们声明了一个类A并在其中声明了一个友元函数display。这个函数可以访问A类的私有成员变量x。在函数中,我们直接输出了x的值。在主函数中,我们创建了一个对象obj并将obj.x赋值为5。然后我们调用了display函数来输出obj的x值。由于display函数是A类的友元函数,它可以访问x变量。
总结而言,友元函数可以访问类的私有变量,但为了安全起见,我们应该尽量避免使用友元函数,而是尝试通过访问函数或公共成员函数来操作私有变量。
阅读全文