【发布时间】:2013-04-12 08:11:21
【问题描述】:
我有一个 c++ 程序,它以库完成的“繁重”计算开始。 在发布模式下大约需要 10 秒,但在调试模式下大约需要 15 分钟。所以,没有任何技巧,如果我想调试程序的其余部分,我必须浪费最初的时间。
一种可能的解决方案是在发布模式下将计算结果保存到文件中,并在调试模式下使用预处理器指令读取它们:
#ifdef _DEBUG
read_result_from_file();
#else
do_heavy_computation();
save_result_to_file();
#endif
但我想知道是否存在其他解决方案。例如,是否可以保存调试会话的状态,以便从第二次开始我可以在初始计算后开始调试?
【问题讨论】:
-
计算后的断点?或者如果在调试模式下进行模拟计算?
-
在虚拟机中运行程序。计算完成后,拍摄快照。要再次调试,请恢复快照。
-
我猜他有那个断点,但是如果计算持续那么长时间,它不会节省他的时间。
-
this 可能会有所帮助。您也可以尝试大部分时间调试发布版本,并在不够时切换到调试。
标签: c++ debugging visual-studio-2012 save