Freigeben über


Ergebnisüberprüfung

Aktualisiert: November 2007

Dieses Thema gilt für folgende Anwendungsbereiche:

Edition

Visual Basic

C#

C++

Web Developer

Express

Nur "Systemeigen"

Standard

Nur "Systemeigen"

Pro und Team

Nur "Systemeigen"

Tabellenlegende:

Vorhanden

Nicht vorhanden

Befehl oder Befehle, die standardmäßig ausgeblendet sind.

Mithilfe von Assertionsanweisungen kann das Ergebnis einer Operation überprüft werden. Besonders eignen sich Assertionen zum Testen von Operationen, deren Ergebnis durch einen schnellen Blick auf den Code nicht ersichtlich ist.

Dies ist beispielsweise beim folgenden Code der Fall, in dem die iMols-Variable abhängig vom Inhalt der verketteten Liste, auf die mols zeigt, aktualisiert wird.

/* 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

Die Anzahl der von iMols gezählten Moleküle muss immer kleiner oder gleich numMols, d. h. der Gesamtanzahl der Moleküle, sein. Durch die visuelle Prüfung dieser Schleife kann nicht ermittelt werden, dass dies immer zutrifft, sodass diese Bedingung nach der Schleife mit einer Assertionsanweisung überprüft wird.

Siehe auch

Konzepte

Aufspüren von logischen Fehlern

Assertionen