我正在努力提高调试会话的效率。 有没有办法将表达式的结果看作隐式本地化?
在这个人为的例子中,我想知道cs.method2()评估的内容,而不必编写一行代码或插入该方法。
bool myObject::isEmpty(double d)
{
bool res;
custString cs(d);
// bool dresult = cs.method2();
res = !cs.method1().empty() && cs.method2();
return res; //set break here.
}
我不想进入方法2,因为它是一个深链,我只对结果感兴趣,但总是传递给像
这样的返回return _mycs_string(_dat);
那么我必须一步一步进入可能具有相同模式的调用。
我不想编写代码拆分行,因为这是一个我无意修改的库。
感谢。
答案 0 :(得分:0)
我的建议是在这里编写代码,在前一行中明确设置cs.method2()的结果。 击>
这个建议的原因是我非常相信编译器开发人员能够优化掉不必要的'从函数返回之前的局部变量。
(您可以查看编译器中的结果代码,了解您在此处拥有的代码,了解它对您的`res'变量的作用)
另一种可能性是w 在cs.method2()调用返回时监视堆栈(在调试器中)作为存储返回值的位置