结果检查

本主题适用于:

版本

Visual Basic

C#

F#

C++

Web Developer

学习版

主题不适用 主题不适用 主题不适用

仅限本机

主题不适用

专业版、高级专业版和旗舰版

主题不适用 主题不适用 主题不适用

仅限本机

主题不适用

可以使用断言语句检查操作的结果。 断言对于测试快速直观检查时结果不明显的操作最有价值。

例如,研究一下以下代码,这段代码根据 mols 所指向的链接列表的内容来更新 iMols 变量:

/* This code assumes that type has overloaded the != operator
 with const char * 
In addition, it also assumes that H2O is somewhere in that linked list. 
Otherwise we'll get an access violation... */
while (mols->type != "H2O")
{
 iMols += mols->num;
 mols = mols->next;
}
ASSERT(iMols<=numMols); // MFC version
_ASSERT(iMols<=numMols); // CRT version

由 iMols 计数的分子数必须始终小于或等于分子总数 numMols。 对循环的直观检查并不说明这一定为真,因此在循环后使用一条断言语句来测试该条件。

请参见

概念

捕捉逻辑错误

断言