奇怪的XCode调试器行为

我正在使用XCode 4.3.1,并且在过去几天调试我的应用程序时发生了一些奇怪的事情。

代码如下:

-(void) init 
{
    list = [[NSMutableArray alloc]init]; // list is declared in the header
}

-(void) dosomething 
{
   [self init];

   // strangely the debugger shows "list" is still null here 

   [list addObject: something]; 

   // but it happily steps over the above line without adding anything to the list
}

另一个问题(代码中的其他地方)是有时调试器决定跳转几行(就好像它切换到另一个线程,但只有一个线程)

最糟糕的部分是,当我跨越代码时,它甚至会倒退几行,然后再次前进。

我试图切换到GDB,但无济于事。 有没有人遇到这些问题?

顺便说一句,我正在做一些分析,发现内存泄漏之前,这些事情开始发生


问题在于,您正在编译优化来运行项目,可能是因为您在发布模式下进行了调试; 或者因为某些原因,您在调试模式下在项目设置中定义了一些编译优化。 检查您的XCode控制台中是否有此消息:

[Project Name] was compiled with optimization - stepping may behave oddly; variables may not be available.

如果是,请阅读以下内容:“项目名称”采用优化进行编译 - 步进可能表现异常; 变量可能不可用

链接地址: http://www.djcxy.com/p/68673.html

上一篇: Strange XCode debugger behaviour

下一篇: "po" command in Xcode 4.6 is very slow the first time