NSAssertionHandler
NSAssert
NSAssert1
NSAssert2
NSAssert3
NSAssert4
NSAssert5
NSCAssert1
NSCAssert2
NSCAssert3
NSCAssert4
NSCAssert5
NSCParameterAssert
NSParameterAssert
Availability 有効性
Technology
#define NSCAssert(condition, desc, ...)
Assertions evaluate a condition and, if the condition evaluates to false, call the assertion handler for the current thread, passing it a format string and a variable number of arguments. Each thread has its own assertion handler, which is an object of class NSAssertion
. When invoked, an assertion handler prints an error message that includes method and class names (or the function name). It then raises an NSInternal
exception.
アサーションは、ある条件を評価します、そして、もしその条件が偽に評価されるならば、アサーションハンドラを現在のスレッドに対して呼び出して、それにある書式設定文字列とある可変の数の引数を渡します。各スレッドは、それ自身のアサーションハンドラを持ちます、それはクラスNSAssertion
のオブジェクトです。発動した時、アサーションハンドラはあるエラーメッセージを出力します、それはメソッドおよびクラス名(または関数名)を含みます。それはそれからNSInternal
例外を引き起こします。
The NSCAssert
macro evaluates the condition and serves as a front end to the assertion handler. This macro should be used only within C functions. NSCAssert
takes no arguments other than the condition and format string.
NSCAssert
マクロは、条件を評価します、そしてアサーションハンドラに対するフロントエンドとして奉仕します。このマクロは、C関数内でのみ使われるべきです。NSCAssert
は、条件と書式設定文字列の他に引数を取りません。
The condition
must be an expression that evaluates to true or false. description
is a printf-style format string that describes the failure condition.
condition
は、trueまたはfalseに評価する式でなければなりません。description
は、printfスタイルの書式設定文字列です、それは失敗状態を記述します。
Assertions are disabled if the preprocessor macro NS
is defined. All assertion macros return void.
アサーションは、プリプロセッサマクロNS
が定義されるならば使用不可にされます。アサーションマクロは、voidを返します。
Important 重要
Do not call functions with side effects in the condition
parameter of this macro. The condition
parameter is not evaluated when assertions are disabled, so if you call functions with side effects, those functions may never get called when you build the project in a non-debug configuration.
このマクロのcondition
パラメータにおいて副作用をもつ関数を呼び出さないでください。condition
パラメータは、アサーションが使用不可にされる場合は評価されません、あなたが副作用をもつ関数を呼び出すならば、それらの関数は、あなたがプロジェクトを無デバッグ構成設定でビルドする時に一度も呼び出されないかもしれません。
Note 注意
Not all release configurations disable assertions by default. 全てのリリース構成設定が初期状態でアサーションを使用不可にはしません。
NSAssertionHandler
NSAssert
NSAssert1
NSAssert2
NSAssert3
NSAssert4
NSAssert5
NSCAssert1
NSCAssert2
NSCAssert3
NSCAssert4
NSCAssert5
NSCParameterAssert
NSParameterAssert