Using the ASSERT_VALID Macro

Use the ASSERT_VALID macro to perform a run-time check of an object’s internal consistency. The ASSERT_VALID macro is a more robust way of accomplishing

pObject->AssertValid();

Like the ASSERT macro, ASSERT_VALID is turned on in the debug version of your program, but turned off in the release version.