http://rzserv2.fhnon.de/~lg016586/downl ... Assert.zipThe assert function checks whether its first argument is not false and simply returns that argument.
Assert() Function
-
FloHimself
- Beiträge: 338
- Registriert: 05.09.2004 18:47
Assert() Function
Zuletzt geändert von FloHimself am 21.09.2007 10:31, insgesamt 1-mal geändert.
-
FloHimself
- Beiträge: 338
- Registriert: 05.09.2004 18:47
Die Assert Funktion ist etwas super simples. Sie überprüft den (ersten) übergebenen Parameter und gibt diesen als Rückgabewert wieder. Ist der Wert 0 (#False) wird eine Fehlermeldung (eine standard Meldung oder die im optionalen zweiten Parameter übergebene Mitteilung) im Debugger (und nur im Debugger!) angezeigt.
Wie gesagt, eine sehr einfache Funktion, aber in größeren Projekten war sie sehr hilfreich, zB bei der Suche nach NULL Pointern.
Beispiel:
Im Debug Modus wird also der Rückgabewert der Funktion GimmeAPointer() an Assert() übergeben und geprüft ob dieser 0 ist. Ist er das, stoppt der Debugger mit Fehlermeldung. Ist der Rückgabewert von GimmeAPointer() <> 0, wird dieser über die Assert() Funktion zurückgegeben. Bei deaktivierten Debugger gibt Assert immer den übergebenen Wert zurück.
Wie gesagt, eine sehr einfache Funktion, aber in größeren Projekten war sie sehr hilfreich, zB bei der Suche nach NULL Pointern.
Beispiel:
Code: Alles auswählen
*MyPtr = Assert(GimmeAPointer(), "w00t a NULL Pointer?")- freedimension
- Admin
- Beiträge: 1987
- Registriert: 08.09.2004 13:19
- Wohnort: Ludwigsburg
- Kontaktdaten:
*doh*, das mach ich schon Jahr und Tag mit Datenbankabfragen in PHP so, aber auf die Idee das auch in PB so zu machen bin ich natürlich nicht gekommen 
Flo:
Man sollte Fred vorschlagen das in die OnError- oder Misc-Library aufzunehmen, am Besten mit mehreren optionalen Parametern mit denen man noch näher bestimmen kann, wo der ungültige Zahlenbereich liegt (ist ja nicht immer 0).
Flo:
Man sollte Fred vorschlagen das in die OnError- oder Misc-Library aufzunehmen, am Besten mit mehreren optionalen Parametern mit denen man noch näher bestimmen kann, wo der ungültige Zahlenbereich liegt (ist ja nicht immer 0).
- freedimension
- Admin
- Beiträge: 1987
- Registriert: 08.09.2004 13:19
- Wohnort: Ludwigsburg
- Kontaktdaten:
