怎样在一个类中实现枚举型成员变量
以下代码并不一定正确,只为体现程序意图
如,有两个枚举类型
enum rolename={dad,mam,son};
enum work={worker,teacher,doctor,actor};
class 家庭成员类
{
public: ...
private: ...
protected:
rolename cname;
work cwork;
}
两个问题:
1、类的实现代码怎么写?
2、想在程序中遍历所有“rolename”的各种“work”的组合,怎么做(我想是要用到类的实例数组(不知这个称呼对不对)和循环的,但不知怎么写)。
对第二个问题的说明:遍历需要循环,
第一个循环中,
生成第一个类为fm[0]它满足fm[0].rolename=dad;fm[0].work=worker;
第二个类为fm[1],它满足fm[1].rolename=mam;fm[1].work=teacher;
第三个类为fm[2],它满足fm[2].rolename=son;fm[2].work=doctor;
(我之所以写成数组的形式,是想体现出它们是一起存活和销毁的);
第二个循环中,
生成第一个类为fm[0].rolename=dad;fm[0].work=teacher;
第二个类为fm[1],它满足fm[1].rolename=mam;fm[1].work=doctor;
第三个类为fm[2],它满足fm[2].rolename=son;fm[2].work=actor;
(注意成员变量cwork都是父亲、母亲、儿子(也要用循环赋给,因为实际程序中可能有很多项需要枚举,不可能手工赋值),而三者的工作根据枚举类型work在变化);如此这般显然要经历4次循环将work(因为work里有4个枚举项)遍历一次。