游戏开发论坛

 找回密码
 立即注册
搜索
12
返回列表 发新帖
楼主: sea_bug

你学会调试程序了吗?

[复制链接]

59

主题

1104

帖子

1199

积分

金牌会员

Rank: 6Rank: 6

积分
1199
发表于 2004-4-30 04:07:00 | 显示全部楼层

Re: Re: Re:你学会调试程序了吗?

sea_bug: Re: Re:你学会调试程序了吗?


如果你的bug是时有时无。。。。。那这种bug就非常难查了。


This kind of problems usually appear on some network programs.
I suggest that you'd better write a class called "logger" which logs input/ouput information to a file, and when error occurs, just check the file to find the problem.

And also, you could write your own tools to check the log file automatically.

58

主题

281

帖子

281

积分

中级会员

Rank: 3Rank: 3

积分
281
QQ
发表于 2004-5-2 02:16:00 | 显示全部楼层

Re:你学会调试程序了吗?

最怕的是,出错后调试,显示的是汇编,而不是源码,不知是否因为我用的是D版?

0

主题

5

帖子

5

积分

新手上路

Rank: 1

积分
5
发表于 2004-5-2 14:04:00 | 显示全部楼层

Re:你学会调试程序了吗?

努力中

3

主题

186

帖子

190

积分

注册会员

Rank: 2

积分
190
发表于 2004-5-6 11:56:00 | 显示全部楼层

Re:你学会调试程序了吗?

最怕的是,出错后调试,显示的是汇编,而不是源码,不知是否因为我用的是D版?


和D版没关系吧,主要是你没有程序中断地方的源码,比如系统的DLL中中断,其实你一般可以查看调用堆栈(Call stack)

1

主题

6

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2004-5-18 11:14:00 | 显示全部楼层

Re:你学会调试程序了吗?

多谢大虾

0

主题

130

帖子

130

积分

注册会员

Rank: 2

积分
130
发表于 2004-5-18 11:42:00 | 显示全部楼层

Re:你学会调试程序了吗?

还有几个有效的方法:
1在可能出现异常的地方,加ASSERT(),即使是release版也要能看到出错的地方(文件名和行数).
加try,catch得到其他意料之外的错误.不要让你的程序异常退出,这样可以在退出时将现场打印出来.

2.自己管理内存,在分配时进行清内存操作,DEBUG版最好能将调用分配的文件名和行数记录下来,具体做法可以参考MFC的DEBUG_NEW的写法,也就就是用带参数的new操作符,将文件名和行数作为参数传入.

11

主题

274

帖子

669

积分

高级会员

Rank: 4

积分
669
发表于 2004-5-18 14:01:00 | 显示全部楼层

Re:你学会调试程序了吗?

这种可能对刚学的很有用,但对老鸟来说是必须的过程。

0

主题

6

帖子

12

积分

新手上路

Rank: 1

积分
12
发表于 2004-7-1 15:49:00 | 显示全部楼层

Re:你学会调试程序了吗?

感谢

28

主题

433

帖子

433

积分

中级会员

Rank: 3Rank: 3

积分
433
发表于 2004-7-1 22:31:00 | 显示全部楼层

Re:你学会调试程序了吗?

不会汇编 调程序~会很麻烦的~~
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-7-3 02:35

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表