allegro OpenSource - Quelltexte der Klassenbibliothek
Quelldateien
Es gibt für die Klassen (außer RECORD)
jeweils ein 2buchstabiges Präfix der Funktions- und
Variablennamen. Daran erkennt man die von außen verwendbaren ("public")
Namen, die internen ("private") haben kein Präfix. (Wer nicht selbst eingreift
in die Innereien der Klassen, braucht die internen Variablen und
Unterprogramme nicht zu kennen!)
Präfix Datei Inhalt
A. Klassen
Klasse KONFIG
Ko konfig.cpp Konfiguration (CFG)
konfig.hpp
Klasse RECORD
record.cpp Datensatz [ohne Präfix]
record.hpp
Klasse EXET
Ex exet.cpp Exportparameter ausfuehren
E2 exet2.cpp Parameterdatei einlesen
E3 exet3.cpp Hilfsroutinen f. Export
exet.hpp
Klasse INDEX [Erweiterung von EXET]
In index.cpp Indexdatei, hoehere Funktionen
index.hpp
ai ai*.cpp Index-Kernfunktionen
ai*.h
Klasse ABASE [Erweiterung von INDEX]
Ab abase.cpp Datenbank-Grundfunktionen
Aw abasew.cpp Schreibfunktionen
abase.hpp
B. Code ohne Klassenzugehörigkeit (auch hier gibt es Präfixe)
Ut utility.cpp Hilfsroutinen: Reserve- u. Phrasenspeicher etc.
utility.hpp
Sy system.cpp SystemRoutinen, z.B. SyOpen()
allegro.hpp Globale Definitionen und Variablen
Die Datei allegro.hpp wird in allen Quellen gebraucht, die mit einer Datenbank umgehen.
Das "Präfix", z.B. Ab, wird zur Benennung der zugehörigen Funktionen (Methoden) benutzt, aber nur derjenigen, die auch von außen benutzbar sind. Nicht jedoch jeweils der Konstruktor und Destruktor, denn die sind sowieso am Namen sofort zu erkennen.
So ist z.B. sofort zu sehen, daß eine Funktion Ko...() in konfig.cpp zu finden ist und eine Funktion ai..() zu den Index-Kernfunktionen gehört. In Programmen, die auf der Kl.Bibl. fußen oder zu ihr gehören, erkennt man also immer sofort, in welcher Quelldatei eine Funktion zu finden ist.
Stets muß die jeweils zugehörige .hpp-Datei per #include ... einbezogen werden, wenn man eine Klasse nutzen will.
Beim Kompilieren muß man die Quelldatei record.cpp mit hinzunehmen, sonst fehlen die Methoden, z.B. die Funktion Ins().
Wie geht man damit um?
Ein Musterprogramm namens osdp.cpp zeigt exemplarisch die Anwendung der
Klassenbibliothek. Es ist umfassend kommentiert. ("osdp" meint "Open Source Demo Program").
Das Muster für die Nutzung einer Klasse ist immer dieses:
1. Ein Objekt anlegen (eine "Instanz" der Klasse),
2. dann dessen Variablen ("Eigenschaften") und Funktionen ("Methoden") nutzen, z.B.
#include "record.hpp"; // Darin steht die Struktur ("Deklaration") der Klasse RECORD
...
RECORD Satz1 = new RECORD(); // Satz1 als Objekt der Klasse RECORD anlegen
...
Satz1->Ins("#20 Was können wir wissen"); // Feld #20 Was... dem Satz1 hinzufügen mit Methode Ins()
[i] zuletzt aktualisiert:
04.05.2011
Email:
ub@tu-bs.de