python 二分法调试代码_二分法调试代码具体指什么?

举个例子,我写了一个一万行的函数然后崩溃了,而且由于某些神奇的原因VC++就是不告诉我崩在了哪里,那怎么办呢?

我先注释掉后面一半的代码,然后崩溃了,就证明蹦在这里了,如果没崩溃,就证明崩在了后面。于是你立刻就把范围缩小了一半。剩下如法炮制,直到定位到一行为止。

==========================================================

我还有一次,是跟一个人合作。对方一直在改,我一个feature写得比较久,当人家checkin了几十次之后,我merge下来,跑了一次test,居然崩溃了。我在指责了那个人每次checkin前都不跑test之后,我就开始了二分调试法:

首先我知道,version 100是好的,version200 是不好的,所以我就把version150弄下来跑一下,发现没崩溃,就把version 175弄下来跑一下,发现崩溃了,就把version 163弄下来跑一下,发现崩溃了……如法炮制,最后定位到了一个version,然后把diff贴在email里面,发邮件再谴责一次,勒令对方修改……当然那个diff为什么会造成问题我没看,我还得继续做下一个feature……

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值