2012-03-15 11 views
7

私はNSRangeExceptionのエラーが常に発生しません(特に私がデバッグしているとき)。それはランダムに現れ、どこから来ているのか分かりません。私は配列の操作がたくさんあるので、そのようにそれを排除するのは難しいです。nsrangeexceptionのソースを見つける

私の質問は、番号12109と707?:

2012-03-15 09:25:15.303 appname[12109:707] *** Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArrayI objectAtIndex:]: index 2 beyond bounds [0 .. 0]' 

感謝任意のポインタが何であるか、私は例えば、デバッガの出力からサンプルクラスと行番号のため、手がかりを得ることができるかどうかです。

編集:ログの 残りの部分:

*** First throw call stack: 
(0x33ff38bf 0x342431e5 0x33f4b275 0x1702d 0x37662331 0x3761b2b3 0x33f4d435 0x373b79eb 0x373b79a7 0x373b7985 0x373b76f5 0x3744de55 0x374e3e45 0x373aa99b 0x33fc7b4b 0x33fc5d87 0x33fc60e1 0x33f494dd 0x33f493a5 0x307cdfcd 0x373ca743 0x2325 0x22e4) 
terminate called throwing an exception 

答えて

50

で例外ブレークポイントを追加します。これは、例外を発生させる行で停止します。

ブレークポイントナビゲータで、左下のプラスをクリックし、例外ブレークポイントとすべての例外を選択します。あなたは本当にすべてのプロジェクトでこれを持っている必要があります、それは非常に貴重です。私たちはここではるかに少ない質問を持っています!

+0

それは非常に良いアイデアです、私はそれを試してみましょう、ありがとう。 – user542584

+0

私はこれを知らなかったと信じています、ありがとう! –

+2

omfg thats私はsoooooooo欠けていた....あなたが想像できない...私ができる場合は+20評判を与えるだろう –

1

は、あなたのクラッシュログでさらに下を見て、チャンスはいくつかの点で、それは実際の方法と行を指しますということです。

didLoad:デバイスのクラッシュログから下のブロックでは、最後の行は明らかにリクエストを指す方法をFacebookController.mクラスにライン264

0x33defacb -[NSObject doesNotRecognizeSelector:] + 175 
0x33dee945 ___forwarding___ + 301 
0x33d49680 _CF_forwarding_prep_0 + 48 
0x00037e47 -[FacebookController request:didLoad:] (FacebookController.m:264) 
+0

こんにちは、お返事ありがとうございます、残念ながら、それは何も表示されません。私はクラッシュログの残りの部分で質問を編集しました – user542584

関連する問題