课程作业二
初始
这次用的是vs2015,之前都忘了什么时候下的,至于说2017,估计得在家里那个网络稳定的情况才能安装吧。
用vs我感觉有一点可能会坑到一些人,那就是新建源代码文件要在项目目录下新建,而不能直接从文件菜单栏下操作,这对于刚从dev转来的我十分不友好。具体原因我猜是因为在文件菜单栏下操作不会将文件包入项目吧
编写
虽然这次作业感觉比较简单,但我还是努力将它当做一个软件来写了,感觉最重要的就是处理异常输入了,如果用户手滑输入了一些字母什么的,不至于让用户重新打开一遍程序,我通过对cin的状态进行判定,来判断是否应该将输入缓冲区清空,并提醒用户重新输入。用到了cin.clear()
和cin.ignore()
等方法
关于文件分离
本来我不是很理解为什么要将函数原型另写一个文件,在网上搜索之后才突然意识到如果有多个文件include
这个头文件,那么就会造成函数多次定义的情况,就会对链接器造成困扰,原因是include
的本质上就是将另一文件的内容复制进当前要调用的文件,多个文件对同一函数定义的话链接器就会不知道到底哪个是对的。虽然原理我很早就知道了,但还是看了博客才想到这一点,实在惭愧。