VS中单步调试时出现“由于以前的函数求值超时,函数求值被禁用。必须继续执行才能重新启用函数求值。”的问题。
网上search了下,原因是这样:
这是因为调试时会自动对Local/Watch等窗口里面(或鼠标停留所在)的变量求值,为了防止用户写的程序错误(比如死循环),系统有一个超时限制, 如果某个属性的get中做了很复杂的操作(而不是简单地返回一个私有变量的话),就有可能超过这个时间限制
解决办法,网上是这么说的:
1,关掉自动变量,改用监视变量;2,工具->选项->调试内把自动变量求值关闭。
我试验出来一个更简单的办法:
调试时把VS的“局部变量” 窗口给隐藏起来,再重新调试,这时“局部变量”窗口就不会显示了,此时再单步断点的话,就不会出现标题中所述的错误了。
////////////////////////////////
////////Sixi. Let it be.../////
//////////////////////////////