我正在尝试在我的代码中调试变量。我正在使用断点但当我的鼠标超过“本地人”中出现的任何变量时,本地窗口突然关闭而没有任何警告。还有很多行都是空的。这是一个错误吗?
答案 0 :(得分:1)
您的观察窗口包含错误消息"功能评估已中止。"这可能意味着显示的属性之一具有无限递归,如下所示:
readonly bool isSigned;
public bool IsSigned { get { return IsSigned; } }
修复无限递归,问题应该消失:
readonly bool isSigned;
public bool IsSigned { get { return isSigned; } }
通过从菜单栏中选择" Debug"您可以使用Visual Studio捕获StackOverflowException
。 - > "例外" - > "查找..." - > type" stackoverflow" - >检查"投掷" System.StackOverflowException
- > " OK"
如果"例外"没有出现在" Debug"您的Visual Studio版本的菜单,请按照VS版本To add the Exceptions command to the Debug menu的说明进行操作。
更新刚刚检查过,如果在观察窗口中抛出了StackOverflowException
,Visual Studio就不会中断。{1}}如果您无法通过代码检查找到错误,那么要查找无限递归,您必须删除监视窗口中的所有内容,然后在实际代码中添加一行或多行在您的情况下访问可能导致递归的属性checkaoprimeiroradiobuttonG
,例如
var tmp1 = checkaoprimeiroradiobuttonG;
var tmp2 = desactivabetaoadicionalG;
在这种情况下,递归应该被捕获。