1.1.3 错误处理
在描述从C++(www.cppentry.com)源代码生成可执行文件的过程时,我们忽略了一个小细节--可能出现的错误。如果人类生来就要犯错,那么程序员是人类中犯错最多的。即使是最优秀的程序员编写的代码在第一次(或者以后的好几次)生成可执行文件的过程中都要产生错误。程序员必须修正所有的错误,然后重新执行整个生成过程。下面是使用C++(www.cppentry.com)编程(www.cppentry.com)会遇到的一些基本类型的错误:
编译错误。这类错误发生在代码编译阶段,后果是无法生成目标文件。这种错误可能是语法错误,意思是编译器无法理解某些代码。语法错误经常是由像输入错误这样的简单错误导致的。编译器还能发出警告。尽管通常情况下不必在意警告,但还是应该将它们当做错误来对待,进行修复并重新编译。
链接错误。这类错误发生在链接过程中,并可能提示无法找到程序的某些外部引用。解决办法通常是调整程序中出现问题的引用关系,然后重新编译/链接。
运行时错误。这类错误发生在可执行文件的运行过程中。如果程序执行了某些非法操作,那么有可能突然崩溃。但是有一种更难以捉摸的运行时错误(逻辑错误)能让程序以出人意料的方式运行。如果您曾经玩过某个游戏,里面的某个角色能在空中行走(而这个角色不应该有能力在空中行走),那么所看到的就是一个逻辑错误。
现实世界
游戏公司和其他软件制造商一样努力使自己的产品没有错误。他们最后的防线是质量保证人员(游戏测试员)。游戏测试员以玩游戏为生,但他们的工作不像想象的那样有趣。测试员必须重复地测试游戏的同一部分(也许有几百次),尝试异常情况并且详细记录任何异常。这种工作十分单调,薪酬也不高。但是众所周知,成为测试人员是进入游戏公司的一种极佳方式。