目录
内部类的概念
概念:假如一个a类定义在另一个b类的里面,那么这个a类就是b类的内部类
内部类是一个独立的类,不属于外部类,外部类不可以访问内部类的成员变量
所以内部类是外部类的友元,可以通过外部类的对象参数来访问外部类的所有成员,但外部类不能
内部类的特性
class A
{
public:
class B
{
public:
void print(const A& a) //定义一个内部类的对象参数
{
cout << a._a;
cout << _b; //内部类可以直接访问外部类的静态成员变量和枚举成员
}
};
private:
int _a;
static int _b;
};
特性:
1. 内部类可以定义在外部类的public、protected、private
2. 注意内部类可以直接访问外部类中的static、枚举成员,不需要外部类的对象/类名
3. sizeof(外部类)=外部类,和内部类没有任何关系