2012-06-18 106 views
0

我正在使用XCode 4.3.1,並在最近幾天調試我的應用程序時發生了一些奇怪的事情。奇怪的XCode調試器行爲

下面是代碼:

-(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但無濟於事。有沒有人遇到這些問題?

順便說一句,我是做了一些分析,以找到這些東西之前,內存泄漏開始發生

+1

你嘗試過乾淨的構建,然後再次使用調試器,因爲這是一個Xcode的問題,這恰好一很多人多次,只是給它附庸風雅,看看問題是否得到解決? – rishi

+0

也試過了。清理所有內容並確保它是調試模式。 – Metro

回答

0

的問題是,你與編譯優化運行項目,很可能是因爲您在發佈模式下進行調試;或者因爲某些原因,您在調試模式下在項目設置中定義了一些編譯優化。檢查您是否有以下消息在您的Xcode控制檯:

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

如果是的話,請閱讀本:'Project Name' was compiled with optimization - stepping may behave oddly; variables may not be available