使用vc编C++的程序,提示出错时,怎样快速找到错误位置?

使用vc编C++的程序,提示出错时,怎样快速找到错误位置?,第1张

如果是简单的错误,可以直接双击错误列表里的错误项或者生成输出的错误信息中带行号的地方就可以让编辑窗口定位到错误的位置上。

对于复杂的模板错误,最好使用生成输出芦棚宽窗口。和蚂多数情况下出发错误陪亮的位置是最靠后的引用位置。如果这样确定不了错误,就需要先把自己写的代码里的引用位置找出来,然后逐个分析了。

C++的模板错误虽然往往会有很多行的输出,但其实是一个整体,有时候必须整体分析。这个并没有很完全的捷径可走。只能在使用中不断积累经验。或者你可以尝试先使用clang++之类错误输出更清晰的编译器。如果一定要使用VC++的话,尽量使用最新的版本,因为微软在这方面也一直在改进。

当我们编写大型c++程序时,每次调试程序可能需要很久才能运行到错误位置。所以,我们可以直接运行而拍腊不进行调试,当程序崩溃时选在系统调试器进行调试,则能快速找到错误位置。

Windows *** 作系统有一个默认调试器设置,使程序出现崩溃时,自动调用这个调试器进行调试。这个设置在windows的注册表中。

对于32位 *** 作逗芦系统:HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows NT/CurrentVersion/AeDebug/Debugger。

对于64位 *** 作系山贺带统:HKEY_LOCAL_MACHINE/SOFTWARE/Wow6432Node/Microsoft/Windows NT/CurrentVersion/AeDebug/Debugger。

在这个注册表键中,有两个重要的值:

1、Auto值 : 0表示出现崩溃d出对话框,让用户选择调试器 1表示自动d出默认的调试器。

2、Debugger值,对于windows自带的Dr.Watson该值为“ DRWTSN32 -p %ld -e %ld -g”,对于 WinDBG该值为“WinDbg的安装目录\windbg.exe" -p %ld -e %ld -g”对于Visual Studio该值为"C:\WINDOWS\system32\vsjitdebugger.exe" -p %ld -e %ld"


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8210602.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存