2012-02-21 10 views
2

プロジェクトをXcode 4.0からXcode 4.3に移動した後、私は奇妙なデバッグエラーが発生しました。新しいXcode 4.3デバッガを使用することができません

プロジェクトは正常にビルドされますが、何も追加しなくても、デバッグ時にエラーが発生するたびに、割り当て解除されたアイテムを処理します。

tableData=[[NSMutableArray] init]; 

は、出力ウィンドウではnil ponter

tableData=0x0000 

と奇妙なエラー与える:例:シンプルなラインのために

他の場所では

*** -[__NSDate description]: message sent to deallocated instance 0x8382d30 

はそれがない '__NSDate' かもしれません'UITableView'、 'NSString'などです。 xcode 4.0の同じプロジェクト内の同じ行にはエラーはなく、Xcode 4.3の問題があります。

どうしたのですか?あなたは何かを提案できますか?

+0

また、XCode 4.3でLLDBを使用してこの問題が発生しました。もう少し調べてみると、ivarに値を割り当てた後、ivarはその値を持つと思われる直後に宣言したようです。この問題はGDBを使用しているときに表示されません –

答えて

3

ライン:

tableData=[[NSMutableArray] init]; 

が正しくありません。正しいラインは次のとおりです。

NSLog(@"%p", tableData); // print the tableData memory address 

またはデバッガー変数ウィンドウで見て:

NSMutableArray *tableData = [[NSMutableArray alloc] init]; 

さらに、あなたはメモリアドレスを印刷するには、これらの行を使用することができます。メモリを解放することを忘れないでください:

[tableData release]; // release the memory 
+0

ああ神、もちろん私はそれを行います。 – sinoptic

+0

私の質問は、宣言の欠如よりも多くのセリオがあります!もちろん私はそれをしました。 'NSMutableArray * tableData;'クラス変数であり、私はちょうど質問ではないので、宣言とメモリリリースを表示しません!私はプロジェクトは良い、エラーを構築すると述べた。あなたのコメントは、宣言プロジェクトのビルドだけでは不可能と考えています。私の質問はまだ開いています。 – sinoptic

+0

質問を編集して、正しく動作するはずのコードを表示してください。 – bneely

5

私のxCodeがインストールされました。 私はこの問題を解決しました。

Xcodeの
で行く 製品→編集スキーム...→情報

は、他のデバッガと問題消えるを選択してください。その後、私はこのオプションでプレイし、問題は戻ってこなかった。

私はGDBを提案します。LLDBは、割り振りと初期化の直後に0x00000のポインタを表示することがあるためです。

関連する問題