Windows has triggered a breakpoint

 可能原因是:
1. 访问已经被释放的内存
2. 再次释放已经被释放过的内存

 

 下例中代码执行时出现Windows has triggered a breakpoint错误,因为n被释放后还访问n的next指针。但是错误不是在该行处发生的,而是在后续程序中某处发生的。

template <class T>
struct Node
{
  T data;
  Node<T> *next;  //此处<T>也可以省略
};

Node<T> *n = new Node<T>;

delete n;
n->next = NULL;


修改代码如下,错误消失

delete n;
n = NULL;


参考:使用Windows Debug 工具来侦测堆崩溃http://www.cppblog.com/wangjia184/archive/2008/03/27/45520.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值