break;
default:
break;
}
Ite->InteractionOfInfo(os);
ch4 = Ite->getShow();
}
}
先是 Ite 对象显示交互界面,然后获取交互后的结果进行循环判断。vec 对象
实现显示不同信息的操作。其它几个函数的实现类似。
注意到此处的形参是 std::ostream&os。这样做格式规范一点。而且不需改动
代码,即可将结果输出到文件(用 ofstream& 对象)。
同时智能指针的使用,方便了内存处理,不用担心内存泄漏的问题。
Interaction 类:
交互类,接受输入。交互与实际操作分开的设计,很方便拓展代码,格式上也很
美观。
class Interaction {
public:
Interaction() {}
~Interaction() {}
void setIni(std::ostream& os); //设置初始化界面
void InteractionOfTotal(std::ostream& os); //总设计界面的交互
void InteractionOfDriveDesign(std::ostream& os);//传动设计界面的交互
void InteractionOfPartDesign(std::ostream& os); //零件设计界面的交互
void InteractionOfGearDrive(std::ostream& os); //齿轮传动设计界面
void InteractionOfKey(std::ostream& os); //键设计界面
void InteractionOfAxle(std::ostream& os); //轴设计界面
void InteractionOfBearing(std::ostream& os); //轴承的强度设计
void InteractionOfChainDrive(std::ostream& os); //链传动
void InteractionOfBeltDrive(std::ostream& os); //带传动
void InteractionOfInfo(std::ostream& os); //显示设计信息
//其他部分的设计界面...
char getGearDrive() const { return chGearDrive; }
char getAxle() const { return chAxle; }
char getTotal() const { return chTotal; }
char getDrive() const { return chDrive; }
char getPart() const { return chPart; }
char getShow()const { return chShow; }
char getBearing()const { return chBearing; }