嵌套类型
嵌套类型,nested type,定义于外围类(outer class)作用域内的类型
class CAnimal
{
private:
//Group mGroup;
private:
//EFood food;
private:
typedef int Group;
protected:
enum EFood
{
RICE = 0,
MEAT = 1,
FISH = 2,
FRUIT = 3,
};
private:
Group mGroup;
private:
EFood food;
};
class CDog : public CAnimal
{
private:
//Group mGroup;
private:
EFood food;
};
总结:
- 嵌套类型是独立类型,与外围类无任何逻辑上关联,仅寄存于外围类作用域而已
- 嵌套类型受外围类访问权限控制,遵守外围类对象成员同样访问权限规则,可把嵌套类型理解为外围类类型成员
- 嵌套类型必须遵守先定义后使用规则,即嵌套类型被外围类使用之前必须前置定义
嵌套类
嵌套类,nested class,特殊嵌套类型,其类型为class
class CAnimal
{
public:
CAnimal() { cout << "CAnimal()" << endl; }
public:
void info() { co