Frage : Problem mit externer Subroutine

Ich habe Mühe using eine externe „myutilities“ Bibliothek oder eine Subroutine (nicht sure, die am einfachsten ist.  Im Wesentlichen benutze ich Perl im ubuntu und ich habe einen „mymain.pl“ Index und ich möchte einen anderen Index „load_vars.pl“ „im Wesentlichen verarbeiten“, der ein Bündel Variablen lädt, dann später in „mymain.pl“ möchte ich eine externe Subroutine „in myutilities.lib“ oder „in myutilities.pl“ verwenden (welches am einfachsten ist).  Ich suche nicht langfristiger nach Codewiederverwendung oder -etwas Ähnliches.  Ich schaue gerade, um dieses Projekt fertige asap.
I morgens neu zu erhalten zu Perl, aber ich wirksam einsetze wirklich alle regex Fähigkeiten e.  Mir etwas Anleitungen bitte geben, versucht ich „Gebrauch“, etc. „erfordern“ und nichts arbeitet.  Ich bin sicher, dass dieses ziemlich einfach ist.  Ein sehr sehr kurzes Beispiel using das folgende ist appreciated.

print „Anfang: Ich bin in mymain.pl \ in n“; />print „Ladenvariablen…  Ich bin in load_vars.pl jetzt \ n“;

print „using Dienstprogramme…  Ich bin in myutilities jetzt \ n“; />print „Ende: Ich bin zurück in mymain.pl \ in n“;

Thanks.
Chris

Antwort : Problem mit externer Subroutine

Wenn Sie nicht die missbilligten „Gebrauch vars“ benutzen möchten, können Sie die Variablen zu den Vorprogrammen in myutilities.pl und in load_vars.pl führen, zurückbringen sie, nachdem sie zugewiesen. In diesem Fall müssen Sie ein Vorprogramm in load_vars.pl verwenden
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
6:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
mymain.pl
#! /usr/bin/perl
strenges verwenden;

mein ($a, $b, $c);
„load_vars.pl“ erfordern;
„myutilities.pl“ erfordern;
Druck„Anfang: Ich bin in mymain.pl \ in n \ in n“;
($a, $b, $c) = &load_vars;
&myutilities ($a);
Druck„Ende: Ich bin in mymain.pl \ NAND n im mymain, welche die geladenen Variablen sind: \ na=$a \ nb=$b \ nc=$c \ n“;

load_vars.pl
#! /usr/bin/perl
strenges verwenden;

sub load_vars {
  „Ladenvariablen drucken…  Ich bin in load_vars.pl jetzt \ n \ n“;
  mein $a = „Apfel“;
  mein $b = „Banane“;
  mein $c = „Kirsche“;
  zurückgehen ($a, $b, $c);
}
1;

myutilities.pl
#! /usr/bin/perl
strenges verwenden;

sub myutilities {
  mein ($a) = @_;
  Druck „using Dienstprogramme…  Ich bin in myutilities jetzt \ n“.
  „und in den myutilities a = $a \ n \ n“;
}
1;


Ausgang:
[~ root@dm1] # ./mymain.pl
Anfang: Ich bin in mymain.pl

Ladenvariablen…  Ich bin in load_vars.pl jetzt

using Dienstprogramme…  Ich bin in den myutilities jetzt
und in den myutilities a = Apfel

Ende: Ich bin in mymain.pl
und n mymain die geladenen Variablen sind:
a=apple
b=banana
c=cherry
Weitere Lösungen  
 
programming4us programming4us