ENSURE (MFC)
データの正確性を検証するために使用します。
ENSURE(
booleanExpression
)
ENSURE_VALID(
booleanExpression
)
パラメーター
- booleanExpression
テストするブール式を指定します。
解説
これらのマクロのオブジェクトは、パラメーターの有効性検査を向上させることです。マクロは、コードの不適切なパラメーターのさらに処理を回避できます。ASSERT マクロとは異なり、 ENSURE のマクロには、アサーションの生成を行います。例外をスローします。
マクロは、プロジェクト構成に従って、 2 とおりの方法で実行されます。アサーションが失敗したマクロ呼び出し ASSERT によって例外をスローします。したがって、 _DEBUG が定義されている (つまり、デバッグ構成で)マクロがリリース構成でアサーションと例外を生成すると、マクロ、例外が生成されます (ASSERT はリリース構成の式は評価されません)。
マクロ ENSURE_ARG は ENSURE マクロのように動作します。
ENSURE_VALID (デバッグ ビルドでのみ影響を及ぼす) ASSERT_VALID のマクロ ダイヤルします。また、 ENSURE_VALID は例外をポインターの null であるスローします。空のテストはデバッグ構成とリリース構成の両方で実行されます。
これらのテストのいずれかが失敗すると、警告のメッセージが ASSERTのように表示されます。マクロは、必要に応じて無効な引数の例外をスローします。
使用例
void CMyClass::Open(CMyObject* pMyObject)
{
ENSURE_VALID(pMyObject);
ENSURE(m_CubeLen > 0);
pMyObject->DoSomething();
}
必要条件
ヘッダー : afx.h