这次的project,真的是好好的练习了一回文件操作!
4月底开始做,直到今天才完全完工(上交检阅),本来是一件很简单的任务,由于初期没有好好的规划好结构,忙了大半天,发现还是在原地兜了个圈,无奈呀!这次反了最大的错误,就是没有好好的构思,构思。有几个地方跟大家分享一下:
1 - 纯虚函数的编译
刚开始编译的时候,继承的纯虚函数 modifyOrder()没有实现,导致编译失败,教训是:必须先在子类实现这个函数!
2 - 文件读取
在读取和保存相关menutxt和order .txt时,用fstream打开的可读可写(ios::in | ios::out)的,infile,orderfile对象只能成功的读入menu.txt , order.txt,却不能够在用户退出程序的时候保存用户的操作后的menu,order等资料;
这个问题刚开始的时候是用ifstream和ofstream分别处理menu.txt , order.txt才解决的,不过后面发现这是没有clear掉程序开始前读取menu.txt,order.txt是流的eof值,导致后期写入文件的时候操作失败!
3 - 流的输入问题
getline 使用之前最好清除缓冲流;
cin读取int型时得注意char的输入问题;
类的构造函数中string的初始化;
好了,这次project就这样不痛不痒的过去了,庆祝一下...