Frage deutsch
~~~~~~~~~~~~~~~
Was ist eine Unit und wie gehe ich damit um?
Question English
~~~~~~~~~~~~~~~
What's a unit and how do I handle it ?
Antwort 1
~~~~~~~~~
[ von Thomas Antoni, 23.8.2002 ]
.
Was bei QuickBASIC die -> Bibliotheken und QuickLibraries (
-> QLB ) sind, sind bei PowerBASIC die Units .
Eine Unit ist eine Programmdatei, die Prozeduren ( -> Subroutinen )
und -> Funktionen enthält, die bereits
kompiliert sind. Eine Unit wird bei PowerBASIC über die Compiler - ->
Direktive $LINK Datei.PBU
in ein anderes Quellsprache-Programm eingebunden.
Diese Direktive (bei PowerBASIC "Meta Statement" genannt) wird einfach an den
Anfang des Quellspracheprogramms hingeschrieben. Die Dateiendung PBU steht für
"PowerBasic Unit file". Ein besonderer Linkvorgang
ist im Gegensatz zu den QuickBasic-Bibliotheken nicht erforderlich. Insofern
ähnelt die Unit mehr einer QuickLibrary bei QuickBasic als einer Bibliothek.
Die Verwendung von Units kann helfen, den Compiliervorgang zu beschleunigen
und den Programmspeicher besser zu nutzen. Bereits ausgetestete Programmteile
müssen nicht immer wieder neu überstzt werden.
Der Programmierer kann Units selbst erstellen oder als fertige "Toolbox" von
einem Drittanbieter kaufen.
Du kannst wie folgt vorgehen, um aus deiner ausgetesteten BAS-Programmdatei,
die nur SUBs und FUNCTIONs enthalten darf, eine Unit zu machen: <Compile |
Destination | Unit File | Compile> .
Bei der Verwendung von Units ist Folgendes zu beachten:
• Die in der Unit enthaltenen
SUB/FUNCTIONs müssen in der Unit-Datei als PUBLIC deklariert
werden.
• Die vom Hauptprogramm benutzten, in der
Unit enthalltenen SUB/FUNCTIONs müssen im Hauptprogramm mit dem korrekten Typ
der Übergabeparameter deklariert werden.
Variablen, auf die sowohl das Hauptprogramm als auch die Unit zugreifen soll,
müssen im Hauptprogramm als PUBLIC und in der Unit als EXTERNAL deklariert
werden (betrifft nicht die Übergabeparameter an die SUB/FUNCTIONs der
Unit).
• Die Unit-Verwaltung differiert zwischen
den PowerBASIC-Versionen. Im Zweifelsfall solltest Du die Unit für anderen
neueren Compiler neu generieren.
Antwort 2
~~~~~~~~~~
[ von Ch@rly ( karlpircher*hotmail.com ), im
QB-Forum, 23.8.2002 ]
*** Was ist der Unterschied zwischen einer PowerBASIC-Unit und einer LIB bzw
QLB bei QuickBasic?
PowerBasic Units sind ein eigenes System zum Verwalten von Libs in Power
Basic. Dies sind allerdings in keinster Weise mit den LIBs von Microsoft
kompatibel und soviel ich weiß gibt es teilweise auch Unterschiede zwischen den
einzelnen PowerBASIC Versionen. In PowerBaSIC gibt es das Programm PBLIB zum
Verwalten der LIBs. Es wird hier kein Unterschied zwischen Laufzeit version und
Entwicklungsversion gemacht, wie in QB mit OBJ/LIB.
[ The QBasic-MonsterFAQ --- Start Page: www.antonis.de/faq ]