结对编程中双方互相审查代码是一个相互学习的过程,从对方的代码中可以学到一些想不到的新的想法。正所谓孔子说的“三人行,必有我师焉”。
优点:
1、建立一个用户类,将对用户的登录、切换、生成试卷、输出文件等操作封装到类中,具有良好的封装性和可扩展性。
class User { private: string Passward; int Number; string Name; string Type; string folderPath; string Path; ofstream Paper; stringstream question; public: void SignIn(); void Exam_Paper(); void Symbol(int option,int ope); void Switch_Type(); void Name_File(); bool Check(); };
2、在生成试卷的函数中对代码进行了重用,减少了代码量。(相较之下自己分了三类处理,整个函数的代码显得冗长)
3、思路清晰,主函数中只简单调用了函数,代码量很少。
4、对于操作数,有先后问题(比如根号在操作数前而平方在操作数后),她采取的方式是建立一个函数对操作数进行处理,这非常大地减少了函数的代码量。
void User::Symbol(int option,int ope) {//对每个操作数进行处理 switch(option) { case 0://不处理,即小学的题目 question<<ope; break; case 1: question<<ope<<"^2"; break; case 2://option为0-2时,表示生成初中的题目 question<<"√"<<ope; break; case 3: question<<"sin"<<ope; break; case 4: question<<"cos"<<ope; break; case 5://option为0-5时,生成的是高中的题目 question<<"tan"<<ope; break; } }
缺点:
1、对于检查是否生成相同题目还存在一定问题。
2、没有生成文件夹,在实际操作中意义不大。
原文地址:https://www.cnblogs.com/jiangjia/p/11552398.html
时间: 2024-10-29 16:30:29