dBASE Quellcode-Bereiche bequem deaktivieren

Sie können im dBASE Quellcode mit den Zeichen *, && und // Teile Ihres Codes jederzeit deaktivieren, sowie Kommentare und wichtige Erklärungen direkt im Code unterbringen.

Der Unterschied ist lediglich, dass * nur am Beginn einer Befehlszeile funktioniert, während mit // und && ein Kommentar auch an das Ende der Befehlszeile geschrieben werden kann, und mit /* und */ sogar zwischen Befehlen (das macht den Code aber unübersichtlich).

Hierzu ein paar einfache Beispiele:

* ? “ich bin inaktiv”
// ? “ich habe auch Pause”
&& ? “ich erscheine nicht”

? “ich bin aktiv” // ich bin ein Kommentar
? “ich bin aktiv” && ich bin ein Kommentar
? “ich bin aktiv” * ich erzeuge einen Fehler!

? “ich bin vorne” /* Kommentar */ + ” und ich hinten”

Das ist ja alles ganz praktisch, doch wenn Sie mal längere Kommentare schreiben, die über mehrere Zeilen gehen, wird das schnell zu umständlich. Ebenso wenn Sie testweise längere Codeabschnitte deaktivieren wollen. Wollen Sie dutzende, evtl. gar hunderte Zeilen einzeln mit einem * vorne ergänzen? Na vermutlich haben Sie besseres zu tun in Ihrem Leben.

Das geht auch viel einfacher, und Sie haben sogar mehrere Möglichkeiten dafür. Entweder verwenden Sie die oben erwähnten Zeichenfolgen /* und */, um damit auch mehrzeilige Kommentare zu schreiben bzw. mehrere Zeilen vorübergehend ausser Gefecht zu setzen.

/*
dieser Block
ist inaktiv
bzw. ist ein
Kommentar
? “ich erscheine nicht”
*/

Allerdings dürfen Sie Kommentare mit /* und */ nicht ineinander verschachteln. Das folgende Beispiel funktioniert also nicht, sondern führt zu einer Fehlermeldung.

/*
dieser Block
ist fehlerhaft
? “ich bin ” /*Kommentar*/ + “ein Text”
*/

Besser: verwenden Sie die Kombination #ifdef und #endif und einen beliebigen Begriff, der natürlich nicht mit #define definiert und auch kein dBASE-Schlüsselwort sein darf. Ich mache das seit Jahren, ach was, seit Jahrzehnten, in diversen Programmiersprachen immer mit nix. Dann können in dem Codeabschnitt auch Kommentare enthalten sein, ohne dass sie stören.

#ifdef nix
dieser Block
ist inaktiv
bzw. ist ein
Kommentar
? “ich bin ” /*Kommentar*/ + “ein Text”
#endif

Da der Begriff nix nicht definiert ist werden sämtliche Zeilen ab #ifdef bis zum #endif nicht ausgeführt, sondern vom dBASE-Compiler komplett ignoriert. Ob dort dBASE-Befehle stehen, eine längere Code-Beschreibung oder Ihre komplette Lebensgeschichte, das ist egal.

Weitere nützliche Tricks zur Verwendung von Kommentaren im Code finden Sie in meinem Buch dBASE lebt! Band 2 ab Seite 232. Und wichtige zusätzliche Infos zu den anderen Möglichkeiten von #define und #ifdef enthält dasselbe Buch ab der Seite 174.

(Stand dieser Info: 2012)