除了使用带有调试器的完全集成的IDE(如Eclipse)之外,还有什么小工具可以实现这个目的:
它不需要抛光,甚至不是绝对稳定的,它可以是像wx这样的小部件库的内省示例代码.平台独立会很好(不是PyObjC程序,或类似的东西在Windows上).
有任何想法吗 ?
编辑:是的,我知道pdb,但我正在寻找所有当前对象的图形树.
不过,这里有一个很好的介绍如何使用pdb(在这种情况下在Django中): pdb + Django
我正在重构一些工作代码,我遇到了一些以"@"符号为前缀的函数调用.据我了解,如果调用失败,这是为了逃避PHP错误报告.
这种类型的东西是好的做法吗?我理解开发环境中的基本原理,但是当网站被推向生产时,不应该正确处理所有错误而不是仅仅进行转义?
因此,使用此符号意味着开发人员必须在稍后阶段对代码进行排序,以删除所有错误报告转义.
我不确定是否删除这些符号,只是找到一种更好的方法来处理潜在的错误.
为清楚起见,使用它的函数是本机PHP fsockopen()函数.
我正在审核在Windows上运行的C++应用程序,针对多线程调试DLL进行编译.它有很多可以产生线程的第三方依赖项.我需要跟踪每个线程为什么存在以及分配多少堆栈空间.
什么是追溯到线程创建开始的好方法,以便我可以看到它产生的位置?
更新:我应该指出我拥有Microsoft依赖项之外的整个应用程序的源代码.但是,很多线程都有独立存在于操作系统附带的库中的callstacks,如ntdll.dll和kernel32.dll.
尝试调试控制器操作方法,当我附加到进程时,调试图标变为空心,并表示"当前断点不会被命中"
但是我response.write在那时做了一个,当页面渲染时它会输出测试文本.
那部分确实正在执行,为什么调试模式不起作用?
我有几个C#控制台应用程序,基本上解析内存中的大量数据(LINQ)并将结果输出到文本文件.
现在,忘记写入文本文件一分钟,因为这不是问题发生的地方.
当我在调试模式下运行应用程序时,我永远不会使用超过50%的CPU使用率.它将解析/按摩数十万条记录,但只能快速运行X并利用50%的CPU(在任务管理器中查看).
我真的想用100%的CPU来加快处理速度.
有人有任何见解吗?
我正在运行带有Service Pack 3的Windows XP Professional.我安装了带Service Pack 1的Visual Studio 2008 Professional.
谢谢!
编辑:
在我的程序退出的极少数情况下,我得到"ESP的值没有在函数调用中保存"错误.该错误非常随机且难以重现.
如何调试此错误(VC++ 2008)?它是多么苛刻,因为它只在停机时发生?在发布模式下错误是否也可见?
奇怪的是,如果我在调试模式下构建我的程序,我没有错误,但如果我在发布模式下构建我的程序,我会收到一条错误消息,指出找不到Msvcr90d.dll.Msvcr90d.dll是一个调试库,我不知道为什么当我加载它时它会出现= =
对不起,极端的新手问题,但我无法在别处找到答案,并没有实际做过这样的事我自己(去图 - 我想,当你的公司使用的生产环境中进行测试出现这种情况).
如果Visual Studio提供了一些机制来指定某些代码段(例如,日志记录)应仅包含在Debug构建中,那将是很好的.这存在吗?我对C#和VB.NET以及VS 2005中的方法感兴趣,以防万一.
我正在尝试调试一种方法,该方法除了其他方面之外,还将项添加到方法本地的列表中.
但是,每隔一段时间,列表大小就会被设置为零"中游".我想设置调试器在列表大小变为零时中断,但我不知道如何,并且会欣赏有关如何执行此操作的任何指针.
谢谢.
我需要在调试模式下将某些代码行"激活",并在发布模式下忽略.有没有办法做这样的事情:
#include <iostream>
using namespace std;
#ifdef _TEST_
#define _cerr cerr
#else
#define _cerr // cerr
#endif
int main() {
_cerr << "TEST message" << endl;
}
Run Code Online (Sandbox Code Playgroud)
因此,当_TEST_未定义时,会对某些行进行注释或从代码中删除.我知道评论是在其余的之前处理的,所以这段代码是错误的.但是,如何在不明确使用#ifdefs的情况下获得我需要的行为?