行业知识
【C++】友元、内部类和匿名对象
2026-10-19 13:19:34
来源:互联网转载
个人主页
���个人专栏——C++学习⭐
点击关注一起学习C语言
目录
1. 友元
1.1 友元函数
1.2 友元类
2. 内部类
2.1 成员内部类
2.2 局部内部类
3. 匿名对象
3.1 基本概念
3.1 隐式转换
1. 友元
友元提供了一种突破封装的方式,有时提供了便利。但是友元会增加耦合度,破坏了封装,所以 友元不宜多用。
友元分为:友元函数和友元类。
1.1 友元函数
友元函数可以访问类的私有成员和受保护成员,即使它们不是类的成员函数。
友元函数在类中声明为友元,可以在类外部定义,但是它们可以访问类的私有和受保护成员。
友元函数的声明方式为将函数声明在类的声明内部,但不是类的成员函数,并使用关键字"friend"来标识它。
在类的外部定义友元函数时,不需要使用类名限定,直接定义即可。
class MyClass {private: int num;public: MyClass(int n) : num(n) {} friend void printNum(const MyClass& obj);};void printNum(const MyClass& obj) { cout