VS2015调试功能初探

关于调试

调试是VS2015很强大的一项功能,它可以帮我们找到程序中的很多错误,那么,就请跟我一起来了解VS2015的调试吧!

程序出错了!

我们从一个特别简单的例子开始说明。
假设程序在Ctrl+F5运行之后,出现了下面这样的情况:

很不爽

我经常出现这种情况,也特别讨厌这种情况(你呢?),但是有问题就要解决,用调试来找到错误的根源。

开始调试

先贴出我的测试代码:

#include <iostream>
using namespace std;

class Example
{
public:
    Example();
    ~Example();
    int example;
private:

};

Example::Example()
{
}

Example::~Example()
{
}

int main()
{
    Example *example=NULL;
    if (example->example)
    {
        cout << "不会到这里来的" << endl;
    }

    system("pause");
    return 0;
}

其实错误一眼就可以看出来,但是我们还是要调试找到它。
1. 设置断点设置断点是为了方便调试,在你认为可能出错的地方下断点,关于如何设置断点,请往下看;
2. 开始调试按F10,或者点击菜单栏的调试–>逐过程:

调试

这时,VS2015会定位到项目的主函数(即入口):

注意

接着按F10调试,现在的情况是这样的:

有问题!

此时example的值是NULL,但是if语句却还是使用了类型为Example的指针变量example的一个成员example!!!!这显然是非法的,怎么能使用一个空的变量的成员?!!

继续按F10,你会发现,弹出了一个窗口:

错误

OK,我们找到了错误之所在,你看看代码,仔细想想就会发现这里的问题了–example变量未初始化!!!
3. 完毕调试完了,改错完毕。

总结

VS2015的调试功能太过强大,这里我们只是用了一点点的东西。可以做的还有很多!

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值