怎样在Unity里面进行代码的查错 | 您所在的位置:网站首页 › 查找代码错误怎么回事儿 › 怎样在Unity里面进行代码的查错 |
继续讲一下在Unity写代码的查错问题,面对新手,老鸟请自动跳过。 对于程序基础比较薄弱的部分Unity使用者,经常会遇到某个项目不能运行,或者运行的时候没有出现自己想要得到的结果。这时候,很有可能是项目里面的代码报错了,或者代码写错了。代码报错的最直接表现是有错误打印,一般在Unity窗口最下面会出现错误打印,不过只会出现一行,我们可以打开Unity的打印输出窗口来确定有没有报错。 右边也有三个小按钮,一个是白色的气泡图标,一个是黄色的三角形图标,一个是红色的气泡图标,后面还跟着数字。 这三个按钮分别对应Unity的三个打印级别:Log、Warning和Error。后面的数字是该类型的打印的条数。如果想隐藏某个级别的打印,可以在这里操作。 介绍完打印输出窗口之后,接下来就说一下代码发生错误的2种类型。第一种,是编译错误。第二种是运行错误 1、编译错误: 这是指项目内的代码存在语法错误,导致了在编译的时候编不过。 另外一种错误,是逻辑错误,也就是运行时才会出现的错误。 比如我这样写代码: 上面已经说出了错误出现的2种常见的情况,针对于编译错误,其实很好查了,还没运行的时候就出现,哪里错了就查哪里的代码来修改。不好查的一般是逻辑错误。我们需要在运行的时候,知道某个方法在调用的时候的变量变化情况、输入输出的参数有没有异常之类的,才能定位到问题出在哪里。 这时候一般就有2种方法去查错,第一种是程序断点,另外一种是加打印输出。 怎样在Unity里断点查问题,我在2013年的时候已经写过文章说明了,过程大同小异,也就不再重复,可以跳转来看看: http://liweizhaolili.blog.163.com/blog/static/162307442013214485190/ 需要说的是,很多朋友不知道什么是断点,这一点很重要。在可以断点的环境下,断点是查问题最快的手段,是程序员最基本的技能之一。断点具体的含义可以自行百度一下,我简单的概括就是,可以在你写代码的地方的某一行点一下,然后程序运行到那一行的时候,自动停下来,让你去看看当前程序运行时,每个参数的具体的值是什么。然后你可以逐行代码继续往下运行,继续观察变量改变的情况,最后定位到出问题的地方。 能断点是一件很幸福的时候,但某些时候是不能断点的,比如你发布了release版本的安装包之后,你就不能再连接编辑器去断点了,或者写lua脚本的时候虽然也能通过一些特别的方法去断点,但我还是觉得麻烦于是也习惯用打印来定位问题。 刚才说过,Unity有三种打印级别,在代码里面可以主动的进行打印: 有些情况下,由于打印的数量很多,你会发现没有办法很容易的找到你想打印的内容。这里我推荐一个插件,叫做ConsolsE。 当我想查看某个关键字的打印内容时,我就可以在过滤框里面输入:
说了这么长,其实内容很少,总结一下,出现代码错误有2种情况,第一种是编译错误,第二种是逻辑错误。编译错误哪里报错改哪里,逻辑报错有2种查错手段,断点和打印。 |
CopyRight 2018-2019 实验室设备网 版权所有 |