[vienna.pm] Module Fragen,

Peter Seitz seitz at bzs.tu-graz.ac.at
Tue Jun 6 19:14:53 CDT 2000


* * * vienna-pm-list * * *


Hallo Perl Freunde,

ich habe noch so meine kleinen Schwierigkeiten, wie ich Module selber 
stricke (zwei links, zwei rechts, eins fallenlassen...)

Zuerst wuerde mich mal interessieren, wo man zusaetzliche Info zur
Modulprogrammierung bekommt. Ich habe schon im Camel-Buch 
nachgelesen, doch da steht auch nicht viel anderes drin als in der 
perldoc und irgendwie bin ich mit den Informationen dort ein klein 
wenig ueberfordert.

Vielleicht kann mir hier jemand etwas unter die Arme greifen.
Ein Beispiel fuer so ein Modul:

--8<---if--you--cut--here--you--will--probably--destroy--your--monitor--
package Ich::system;

use strict;
use vars qw($VERSION @EXPORT_OK @ISA $platform $debug);

use Exporter;
@ISA = qw(Exporter);
@EXPORT_OK = qw($platform $debug);

$VERSION = 0.01_01;

$platform = 0;          
$debug = 10;          

sub test {
  print "test\n";
}                           

#=====================================================================
1; # This must be the last line
--8<---if--you--cut--here--you--will--probably--destroy--your--monitor--

Was hat es mit dem @EXPORT auf sich und was ist der Unterschied 
zum @EXPORT_OK?


Im Hauptprogramm schreibe ich nun:

use strict;
use Ich::system qw($debug);            


Wie mache ich aber nun das Unterprogramm verfuegbar?

Muss ich die Variablen alle mit qw($...) importieren, oder gibt es da 
eine bessere Methode? Ich habe ein Modul geschrieben, in dem ich meine
saemtlichen Systemvariablen setze. Es werden also fast alle Variablen 
des Moduls exportiert.

Wenn ich jetzt im Hauptprogramm auf eine Variable aus dem Modul 
zugreife, dann muss ich das mit $Ich::debug tun. Gibt es da eine 
einfachere Schreibweise?

Ich hab irgendwo gelesen, dass es bei der Variablendefinition bzw 
Subroutine-definition sehr wohl einen Unterschied macht, ob man 
Grossbuchstaben verwendet oder nicht. Kann mir jemand hier einen Tip 
geben?


With best compliments

           Peter Seitz
--

  Technische Universitaet Graz, Austria  - Fak. f. Bauingenieurwesen
  mailto:seitz at bzs.tu-graz.ac.at - http://wwwbzs.tu-graz.ac.at/~seitz/

              Mitglied der Pegasus Mail Supportgruppe
        Koordinator des Pegasus Mail Uebersetzungsprozesses

Die (In)Offizielle deutschsprachige Support Seite fuer Pegasus Mail:
Original: http://wwwbzs.tu-graz.ac.at/software/pegasus/
Mirror:   http://ftp.uni-mannheim.de/mirror/pmail/


###
You are subscribed to vienna-pm-list as "Peter Seitz" <seitz at bzs.tu-graz.ac.at>
http://www.fff.at/fff/vienna.pm/



More information about the Vienna-pm mailing list