在 C++ 中,friend
关键字用于授予其他类或函数访问当前类的 私有(private
)和保护(protected
)成员 的权限。这种机制打破了严格的封装性,但可以在特定场景下提高代码的灵活性和效率。以下是 friend
的详细说明和使用示例:
一、friend
的作用
-
允许外部访问私有成员:类的私有成员通常只能被其自身的成员函数访问,但通过
friend
声明,可以授权特定的外部函数、其他类或成员函数访问这些私有成员。 -
不破坏封装性的合理场景:例如操作符重载、工具函数或紧密协作的类之间共享数据。
二、friend
的用法
1. 友元函数(Friend Function)
-
定义:将非成员函数声明为友元,使其可以访问类的私有成员。
-
适用场景:操作符重载(如
<<
、>>
)、工具函数等。 -
示例: