2017《面向对象程序设计》课程作业四
2017-05-14 18:19
302 查看
2017《面向对象程序设计》课程作业四
面向对象的方法划分类
在做这个四则运算的软件中,我主要是把整个问题当做两个类来判断,类中包含的对象也有指向输出文件的指针以及随机生成符号,随机数字等完成整个四则运算问题所要用到的函数。主要还是为本身的需求服务吧,因为输出文件的指针几乎每个成员函数都要用到,索性就归到这两类当中去了。class cal { public: void random(int *a, int*b, int*c, int *d); void print( int v, int c);//对于结果的输出 void writefile(char *str, char *p);//写出文件 int test(int total, char *p1); int generateExpression(int x); float calcusum(int a, int b, char sig); string combine(string a, string b, char sign); string int_string(int number); char randop(); private: char *p; }; class read { public: void boundary();//用于生成界面 int fileread(char *p1);//读入文件并返回题目数值 private: char *pr;//读入指针 int num; };
类与类之间的联系
联系的话还是通过成员函数与指针来实现的,由于设定成私有变量的缘故,这也是作业中我感觉比较重要的一块,很好地反映了之前所学的知识,不过这之中也有learning by doing的部分,这里简略的贴下代码,通过ostringstream转换成string类型。ostringstream ss1; ss1 << reply; string str1 = ss1.str();
联系部分也是通过指针来跟类中的成员函数来进行的,由成员函数之间发送信息,互相引用各自的成员函数来进行的。
实现自动出题
还是通过随机生成数字,随机生成符号,由于是string类型结合起来比较方便,进而得到生成的题目,具体我通过流程图表示出来(●`∀´●))
git链接
git感想
感觉这次的作业也并非是单纯的轻松的,也在之前的代码上面进行了一系列的修改,相当于一次缓冲期,通过对于系统化的流程图的绘制及理解,也能更好迭代代码。面向对象是从用户和整体角度出发的,把问题作为一组相互作用的实体,显式表示实体间的关系,我想这次作业也可以很好反映这一点。相关文章推荐
- 2017《面向对象程序设计》课程作业七
- 2017《面向对象程序设计》课程作业八
- 2017《面向对象程序设计》课程作业一
- 2017《面向对象程序设计》课程作业五
- 2017《面向对象程序设计》课程作业二
- 2017《面向对象程序设计》课程作业三
- 2017《面向对象程序设计》课程作业二
- 2017《面向对象程序设计》课程作业七
- 2017《面向对象程序设计》课程作业八
- 2017《面向对象程序设计》课程作业三
- 2017《面向对象程序设计》课程作业五
- 2017《面向对象程序设计》课程作业七
- 2017《面向对象程序设计》课程作业二
- 2017《面向对象程序设计》课程作业三
- 2017《面向对象程序设计》课程作业四
- 2017《面向对象程序设计》课程作业四
- 2017《面向对象程序设计》课程作业五
- 2017《面向对象程序设计》课程作业六
- THE LAST ONE!! 2017《面向对象程序设计》课程作业八
- 2017《面向对象程序设计》课程作业一