必要な入力パラメーターがnilである場合、Objective-Cメソッドで例外をスローしますか?

StackOverflow https://stackoverflow.com/questions/7816475

質問

Objective-Cでの例外の一般的なガイダンスの使用に注意してください(例: Objective-C/Cocoaに例外を投げます)私はまだこのケースについてはよくわかりません:

必要な入力パラメーターがベストプラクティス/OKである場合、Objective-Cメソッドに例外をスローしますか?

いいえの場合、ここでObjective-Cでどのようなアプローチが典型的になりますか?

役に立ちましたか?

解決

それは有効な例外、またはアサートでさえあります(これは例外をスローします)。そこには NSParameterAssert マクロは、あなたが望むことをすることをすでに定義しています。

他のヒント

NSASSERTは、開発者自身の利便性を目的としたものです。開発者は、仮定/条件などをチェックするためにそれを使用します。注意すべきことの1つは、NSASSERTがリリースビルドでコードにコンパイルされないことです。

実行時にコードへの無効な入力のケースを処理したい場合にのみ、これらの状況を対象としているため、状況のために@Throw nsexceptionを行います。

NSERRORSは、Appleが提供する別の施設でもあります。通常、プログラミングエラーではない不要な条件に使用されます(たとえば、Bluetoothハードウェアが障害があり、Bluetooth関連アプリケーションはそれに依存しています)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top