草庐IT

DEBUGGING

全部标签

c++ - 调试元程序

有什么方法可以一步步检查模板中发生的事情吗?我的意思是它是如何一步步实例化的等等?我在书中提到了here,我(2分钟前)发现了一个非常有趣的示例,说明如何将二进制文件实现为元函数。templatestructbinary{staticunsignedconstvalue=binary::value//specializationstructbinary//terminatesrecursion{staticunsignedconstvalue=0;};而且我认为能够逐步查看在该模板的实例化过程中完成的工作可能会非常有用。感谢您的回复。 最佳答案

c++ - 如何避免 XCode 调试器进入标准系统头文件?

在XCode调试器中使用“Stepinto”命令时,如何避免它进入标准系统头文件?这种行为是有道理的,因为它是一个正在编译的头文件,但却是浪费时间。我从不想看到标准库中发生了什么,只想看到我的代码。 最佳答案 不是永久性的修复,但是“stepinto”命令的左边是一个“stepover”。不确定是否有更好的方法,但我一直在做的就是在查看标准系统函数时切换到跳过按钮。 关于c++-如何避免XCode调试器进入标准系统头文件?,我们在StackOverflow上找到一个类似的问题:

c# - 输出窗口中消息的 Visual Studio 源

假设我的输出窗口中有一条消息(显示Debug的输出)Exceptionthrown:'System.InvalidOperationException'inmscorlib.dll我的应用程序没有抛出异常,只是显示该消息并继续。当我调用导入的DLL中的方法时发生异常,该DLL是一个C++模块(我的应用程序是C#)。尽管出现此消息,该方法似乎仍能正常运行。我的猜测是该模块正在处理异常然后显示该消息,但我想确定情况确实如此,并且与我如何导入它或编码数据(或自定义编码器)无关).(我的代码:[DllImport("theExternalModule.dll",EntryPoint="Read

c++ - 调试boost::thread应用,误报率高

我编写了一个boost::thread应用程序,其中可能存在一些竞争条件。我想调试这个程序。因此,我使用了以下valgrind工具:哈尔格林德博士不幸的是,他们的误报率非常高。因此,使用下面的非常简单的程序valgrind--tool=drd会提示94个错误,而本不该出现的错误。因此,在我的复杂程序中,我得到了大约15000个错误。所以很难找到真正的错误。我可以使用以下boost库1.46.0和1.47.0重现此行为。以及valgrind3.7.0SVN和valgrind3.8.0SVN。我试用的操作系统是Ubuntu11.10和MacOSX10.7。gcc4.2.1和gcc4.6.1

c++ - 如何检测 Qt Creator 的目标(调试/发布)(Visual Studio)

所以我使用qmake来创建我的程序,但是我总是在我的调试和发布boost库之间有冲突,消息是:libboost_system-vc120-mt-s-1_58.lib(error_code.obj):-1:error:LNK2038:mismatchdetectedfor'_ITERATOR_DEBUG_LEVEL':value'0'doesn'tmatchvalue'2'inmain.obj我想使它自动化,以这样一种方式,从QtCreator选择调试或发布足以创建正确的版本。我看到了其他解决方案,例如here,但这不起作用。不起作用的原因可以在调用以下命令进行调试和发布时看到:mess

c++ - 可以将核心文件恢复到正在运行的程序中吗?

我有一个tool以核心文件的形式生成我的C程序运行时的快照。是否可以将这些核心文件恢复为可执行程序?如果是这样,我该怎么做?是否有任何图书馆已经这样做了?我在*nix系统上工作。 最佳答案 是的,理论上是这样。如果您的快照是程序整个内存、堆栈、堆以及PC的完整转储,则可以将此转储放回内存中并再次启动执行过程。但我认为您必须在内核领域执行此操作。 关于c++-可以将核心文件恢复到正在运行的程序中吗?,我们在StackOverflow上找到一个类似的问题: htt

c++ - Xcode 4.4 中 libc++ 的调试问题

当我尝试在C++上调试列表迭代时遇到问题。我做了一个简单的测试应用:intmain(intargc,constchar*argv[]){//insertcodehere...std::coutlist;list.push_back(1);list.push_back(2);-->list.push_back(3);//Linebeforestepoverfor(std::list::const_iteratori=list.begin();i!=list.end();i++){std::cout调试时,当我在标有箭头的行上时,当我跨过时,它开始执行来自c++文件的代码:“list”。我

javascript - 在 Visual Studio 中调试 javaScript。第一次机会异常(exception)

我在visualstudio(C++)中有一个项目。该项目的前端是用javaScript编写的,它是在chtmlview窗口中运行的C++的简单GUI。当项目在visualstudio中以Debug模式运行时,我得到以下信息:First-chanceexceptionat0x75a0812finMyProject.exe:MicrosoftC++exception:Js::JavascriptExceptionObjectatmemorylocation0x001fc524..First-chanceexceptionat0x75a0812finMyProject.exe:Micros

c++ - 从 Eclipse 调试 Visual Studio 构建

我刚开始一个跨平台(Windows、Linux、OSX)C++项目,我们决定使用Scons作为我们的构建系统,使用Eclipse作为我们的IDE。我已经弄清楚如何触发Scons从Eclipse构建VisualC++,以及如何将错误等反射(reflect)在Eclipse中,到目前为止一切都很好。然而,如果我们也可以使用Eclipse进行调试,那就太好了,但是Eclipse的各种gdb调试选项无法读取VC放入构建中的调试符号。那么有没有人知道解决这个问题的方法,或者(正如我怀疑的那样)我必须使用VisualStudio进行调试吗?显然这绝不是一个糟糕的解决方案,但使用单个IDE会更好!在

c++ - 调试时如何在 Visual C++ 2010 中跟踪/输出时间戳

伙计们,VC2010提供了调试工具“trace”,它不仅可以将变量值输出到输出窗口,还可以输出一些内置参数,如TIDTNAME、PID等。我也想跟踪输出时间戳,这可能是intVS2010吗?谢谢! 最佳答案 您可以使用预定义变量$TICK,info@MSDN 关于c++-调试时如何在VisualC++2010中跟踪/输出时间戳,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/571