I often saw "assert " in iOS code, I google it, and got to know it assert true or false.
I want to know if this will auto disable in release mode?
Use NSAssert() and its companions.
in the project define
NS_BLOCK_ASSERTIONS for your release configuration.
Xcode 4 tremplates disable
NSAsserts in the release configuration. It adds
to "Other C Flags" for "Release".
From the documentation:
Assertions are disabled if the preprocessor macro
NS_BLOCK_ASSERTIONS is defined.
The NSAssert macro evaluates the condition and serves as a front end to the assertion handler.
Each thread has its own assertion handler, which is an object of class
NSAssertionHandler. When invoked, an assertion handler prints an error message that includes the method and class names (or the function name). It then raises an
NSInternalInconsistencyException exception. If condition evaluates to NO, the macro invokes
handleFailureInMethod:object:file:lineNumber:description: on the assertion handler for the current thread, passing desc as the description string.
This macro should be used only within Objective-C methods.