C++ 友元函数与友元类详解
在 C++ 中,友元函数与友元类是重要的概念之一。它们可以在需要时获得类的私有成员变量和函数的访问权限。本篇文章将详细介绍友元函数和友元类的概念、用法以及代码示例,帮助读者更好地掌握这两个重要的概念。
一、友元函数
- 概念
类中的友元函数可以访问该类的私有成员变量和私有函数,但并不属于该类的成员函数。基于这个特性,我们可以使用友元函数来实现一些不方便或无法通过类的成员函数实现的操作。
- 用法
(1)在类中声明友元函数
class MyClass {
public:
friend void func(MyClass& obj); // 在类中声明友元函数
};
(2)在函数中定义访问私有成员变量
void func(MyClass& obj) {
int a = obj.num; // 访问 MyClass 的私有变量 num
obj.privateFunc(); // 调用 MyClass 的私有函数 privateFunc
}
- 示例代码
#include <iostream>
class MyClass {
private:
int num;
void