第一次独立完成的C++小项目,40小时 + 5小时Update + 8小时Linux移植。

过程:

过程非常认真,一个星期主要就是忙这个,为了完成某个部分,有时饭都推迟吃,连续对着电脑10几个小时很累,晚上写到很晚才睡,休息也不够,这让我明白到程序员是不好当的!

成果:

最终版在Win7+VS2005、Ubuntu+G++环境都成功。

环境工具的选择:

VS2010随便写个程序在XP原生态下都不能运行!VC6太旧,XP下用得好。VS2008是Vista时代的魂魄。所以最好还是用VS2005。下载地址:Visual Studio 各版本下载合集vs2005下载vs2008下载vs2010下载vs2012下载

得益:

一开始将main分成四个独立子函数,用的是增量式开发,俗称打桩,用得比较好,好处是模块化。这一点非常有益。

记得刚开始学C语言的第21天,几天里,20个小时写出个蹩脚的图书馆综合系统。得益于这个经验,才令我相信我能完成。

《Accelerate C++》的确是非常适合学习C++的,以前看了不明白它的好,认真看才知妙!完全借用了它的字符图形函数处理类Picture。

改进:

要善用sprintf和sscanf:atoi、atof、itoa、itow函数是windows平台下实现字符串与数值相互转换的函数。Linux平台下请使用标准库中的sprintf与sscanf函数。

调试过程很大部分是在UI用户中,说明UI函数多,且易错。

房号设计02 - 23 ,0223 ,整数怎样表示,这些问题一直缠绕,一开始没解决好,就会影响全局。

备忘:

类的定义和实现在项目推进过程中不断修改,逐渐完善。

用户交互模块最大,ui()函数的ui.cpp文件有454行,14KB。有的模块文件只有几十行,这些开始时是没想到的。

什么是优雅,注重代码重用,函数最好小而精,一次只做一件事。也是Unix类系统的神髓。

老师对我的实验成果~~相当~~比较满意,给分也~~相对地~~高一点。感谢。



原文出自发表的https://blog.pythonwood.com/2013/07/大二C++课程期末作业——一个小工程项目总结/



扩展阅读