一 嵌套类(又称嵌套类型):
(1)定义在一个类内部的类称为嵌套类。
(2)嵌套类的特性:
*嵌套类是独立类,基本上与外围类不相关,因此嵌套类和外围类的对象是相互独立的。嵌套类型的对象不具备外围类所定义的成员,同样,外围类的成员也不具备嵌套类定义的成员。
*嵌套类的名字在其外围类的作用域中可见,但在其它类作用域或定义外围类的作用域中不可见。嵌套类的名字将不会与另一作用域中的名字冲突。
*外围类对嵌套类的成员没有特殊访问权,并且嵌套类对其外围类的成员也没有特殊访问权。
*嵌套类定义其外围类的一个类型成员,像任何其它成员一样,外围类决定对这个类型的访问。
二 联合:节省空间的类。
(1)联合:是一种特殊的类。
*一个union对象可以由多个数据成员,但在任何时候,只有一个成员可以有值。
*当将一个值赋给union对象的一个成员的时候,其它所有都变成未定义的。
*每个union对象的大小在编译时固定:至少与union的最大数据成员一样大。
*union可以定义成员函数,包括构造函数和析构函数。但是,union不能作为基类使用,所以成员函数不能为虚。
*union不能具有静态数据成员或引用成员,而且不能定义类类型成员。
三 局部类:
(1)局部类:在函数体内部定义的类。
*一个局部类定义了一个类型,该类型只在定义它的局部作用域中可见。
*局部类的所有成员必须完全定义在类定义内部,因此,局部类不如嵌套类有用。
*局部类只能访问在外围作用域中定义的类型名、static变量和枚举成员,不能使用定义该类的函数中的变量。

2821

被折叠的 条评论
为什么被折叠?



