C++11新玩法 内部类
class A
{
// 非静态成员变量,可以在成员声明时给缺省值。 (C++11适用)
int a = 10;
B b = 20;
int* p = (int*)malloc(4);
static int n;
};
int A::n = 10;
内部类:
定义在另一个类的内部的类就叫做内部类。内部类是一个独立的类,不属于外部类,
更不能通过外部类的对象去调用内部类。外部类对内部类没有任何优越的访问权限。
1.✪内部类就是外部类的友元类,内部类可以通过外部类的对象参数来访问外部类中的所
有成员;
2.✪外部类不是内部类的友元。
特性:
- 内部类可以定义在外部类的public、protected、private都是可以的。
- 注意内部类可以直接访问外部类中的static、枚举成员,不需要外部类的对象/类名。
- ✪ sizeof(外部类)=外部类大小,和内部类没有任何关系。