在vs2010 断点设置 condition里,有2个选项可以选择:

一个是true,另个是has changed,true好理解,如果表达式为真则停止。但是has changed是什么意思。看了官网的说明:

Choose is true if you want to break when the expression is satisfied or has changed if you want to break when the value of the expression has changed.

Note:

The debugger does not evaluate the expression until the first time the breakpoint is reached. If you choose has changed, the debugger does not consider the first evaluation of the condition to be a change, so the breakpoint will not be hit on the first evaluation.

转自;http://msdn.microsoft.com/en-us/library/7sye83ce(v=vs.90).aspx

意思是第一次不考虑值是否改变,第一次只是来存储该表达式式的值,所以第一次不会名字。

我安照它的意思写了一个测试:

int i=10;
cout<<i<<endl; //断点 i  has changed

i=20;
cout<<i<<endl; //断点 i  has changed

如上,我分别在上面2个位置设置了条件断点,第二个断点看i是否改变。运行F5,没有命中。为什么呢?是因为我把意思理解错误。

has changed应该是同一个断点命中,如果运行到断点语句发现表达式的值与上次运行时不一样,就会停止在这里了。(第一次不会命中,因为没有前一次可以比较)。

所有,has changed一般在循环里使用。如:

for(int j=0;j<5;j++)
{
cout<<j<<endl; //设置 condition 为 j
}

按F5,输出第一个0就停止了,因为第二次运行到断点语句时发现j=1与上次j=0不一样。

如果理解了这个,has changed就可以明白了。

vs2010 条件断点 has changed是什么意思?的更多相关文章

  1. 掌握VS2010调试 -- 入门指南

    1 导言 在软件开发周期中,测试和修正缺陷(defect,defect与bug的区别:Bug是缺陷的一种表现形式,而一个缺陷是可以引起多种Bug的)的时间远多于写代码的时间.通常,debug是指发现缺 ...

  2. VS2010调试入门指南

    1 导言 在软件开发周期中,测试和修正缺陷(defect,defect与bug的区别:Bug是缺陷的一种表现形式,而一个缺陷是可以引起多种Bug的)的时间远多于写代码的时间.通常,debug是指发现缺 ...

  3. VS2010调试 --指南 Reference from : http://blog.csdn.net/kingzone_2008/article/details/8133048

    1 导言 在软件开发周期中,测试和修正缺陷(defect,defect与bug的区别:Bug是缺陷的一种表现形式,而一个缺陷是可以引起多种Bug的) 的时间远多于写代码的时间.通常,debug是指发现 ...

  4. Halcon11与VS2010联合开发

    刚开始学习Halcon,需要使用Halcon与C++联合开发软件,查了网上的资料都是Halcon10的,我用的是Halcon11和VS2010的开发环境,实践了一下发现有一些问题,于是把自己的配置的过 ...

  5. 转:VS2008 vs2010中JQUERY智能提醒

    第一步: 安装VS 2008 SP1 VS 2008 SP1 在Visual Studio中加了更丰富的JavaScript intellisense支持,对很大部分的JavaScript库加了代码完 ...

  6. mysql和VS2010 C++链接过程中出现的问题

    PS:二者连接的过程主要参考这篇博客园文章,http://www.cnblogs.com/justinzhang/archive/2011/09/23/2185963.html 这篇博客园的文章中的代 ...

  7. VS2010+Visual Assist X

    以前一直用VC++6.0,配一个VA,感觉也挺好用的.今天安装了VS2010,感觉还是有点不适应.然后安装了一个 Visual Assist X,主要是VS2010下破解VA有点小麻烦,中途也出现了一 ...

  8. vs2010 调试中监视变量

    在msdn中写了如何查看调试的数据,网址: http://msdn.microsoft.com/zh-cn/library/vstudio/esta7c62(v=vs.100).aspx Visual ...

  9. VS2010每次调试都出现“此项目已经过期”提示

    问题描述   最近因为项目需要,开发平台从VS2005切换成了VS2010,把一些老项目也转换到VS2010平台,因为是从低到高升级,微软还是做了很多兼容,基本上可以无缝切换,编译调试也基本正常,但是 ...

随机推荐

  1. poj2356 Find a multiple(抽屉原理|鸽巢原理)

    /* 引用过来的 题意: 给出N个数,问其中是否存在M个数使其满足M个数的和是N的倍数,如果有多组解, 随意输出一组即可.若不存在,输出 0. 题解: 首先必须声明的一点是本题是一定是有解的.原理根据 ...

  2. MySQL 事物

    BEGIN DECLARE result INTEGER DEFAULT 0; -- 标记是否出错 DECLARE t_error INTEGER DEFAULT 0; -- 如果出现sql异常,则将 ...

  3. 使用PHP实现用户登录和注册的功能

    登陆界面 login.php <form action="logincheck.php" method="post"> 用户名:<input ...

  4. cocos2d-x 截取屏幕可见区域

    在游戏中,我们经常需要分享到社交网络的功能.分享时,我们时常会需要用到截屏的功能.目前网上的文章虽然很多,但是都是截取的 设计分辨率(DesignResolutionSize)大小的屏幕,而这个并不是 ...

  5. Android 使用 intent 实现简单登陆页面

    前言 第一个 Android 程序,应该有些纪念的意义吧~ 主页面布局 给 Button 添加响应函数:android:onClick="login" public void lo ...

  6. 数据库比对脚本(PHP版)

    $config = [ 'hotfix' => [ 'host'=>'', 'port'=>'', 'account'=>'', 'password'=>'', 'dat ...

  7. bzoj 1042: [HAOI2008]硬币购物 dp+容斥原理

    题目链接 1042: [HAOI2008]硬币购物 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1706  Solved: 985[Submit][ ...

  8. Bootstrap Collapse使用

    参考 http://wrongwaycn.github.io/bootstrap/docs/javascript.html#collapse http://www.w3resource.com/twi ...

  9. 浅谈USB设备的VID和PID

    根据USB规范的规定,所有的USB设备都有供应商ID(VID)和产品识别码(PID),主机通过不同的VID和PID来区别不同的设备,VID和PID都是两个字节长,其中,供应商ID(VID)由供应商向U ...

  10. android 百度最新地图sdk包怎么去除 放大缩小按钮

    // 隐藏缩放控件 int childCount = mMapView.getChildCount(); View zoom = null; ; i < childCount; i++) { V ...