Vraag : probleem met externe subroutine

Gebruikt Ik heb probleem dat een externe „een niet zekere myutilities“ bibliotheek of subroutine (die het eenvoudigst zijn.  In wezen, gebruik ik perl in ubuntu en ik heb een manuscript „mymain.pl“ en ik wil een ander manuscript „load_vars.pl“ „hoofdzakelijk verwerken“ dat een bos van variabelen laadt, dan later in „mymain.pl“ ik wil een externe subroutine in „myutilities.lib“ of „myutilities.pl“ gebruiken (welke het gemakkelijkst is).  Ik zoek codehergebruik op lange termijn of iets in die aard niet.  Ik kijk enkel om dit project gebeëindigde asap.
I am aan perl nieuw te krijgen, maar ik werkelijk leveraging alle regexmogelijkheden.  Gelieve te verstrekken me wat advies, heb ik „gebruik“ geprobeerd, „vereis“ enz. en niets werkt.  Ik ben zeker dit vrij gemakkelijk is.  Een zeer zeer kort voorbeeld dat het volgende gebruikt is „begin/>
print: Ik ben in mymain.pl \ n“;

print „ladingsvariabelen…  Ik ben nu in load_vars.pl \ n“;

print „nut gebruikt…  Ik ben nu in myutilities \ n“; „eind
…/>print: Ik ben terug in mymain.pl \ n“;

Thanks.
Chris

Antwoord : probleem met externe subroutine

Als u niet het afgekeurde „gebruik wilt gebruiken vars“ u kunt de variabelen tot de subroutines in myutilities.pl, en in load_vars.pl overgaan, terugkeert hen nadat zij worden toegewezen. In dit geval, moet u een subroutine in load_vars.pl gebruiken
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:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
mymain.pl
#! /usr/bin/perl
strikt gebruik;

mijn ($a, $b, $c);
vereis „load_vars.pl“;
vereis „myutilities.pl“;
druk „begin: Ik ben in mymain.pl \ n \ n“;
($a, $b, $c) = &load_vars;
&myutilities ($a);
druk „eind: Ik ben in mymain.pl \ nand n mymain de geladen variabelen zijn: \ na=$a \ nb=$b \ nc=$c \ n“;

load_vars.pl
#! /usr/bin/perl
strikt gebruik;

sub load_vars {
  variabelen van de druk de „lading…  Ik ben nu in load_vars.pl \ n \ n“;
  mijn $a = „appel“;
  mijn $b = „banaan“;
  mijn $c = „kers“;
  terugkeer ($a, $b, $c);
}
1;

myutilities.pl
#! /usr/bin/perl
strikt gebruik;

sub myutilities {
  mijn ($a) = @_;
  druk die „nut gebruiken…  Ik ben nu in myutilities \ n“.
  „en in myutilities a = $a \ n \ n“;
}
1;


Output:
[root@dm1 ~] # ./mymain.pl
begin: Ik ben in mymain.pl

ladings variabelen…  Ik ben nu in load_vars.pl

gebruikend nut…  Ik ben nu in myutilities
en in myutilities a = appel

eind: Ik ben in mymain.pl
en n mymain de geladen variabelen zijn:
a=apple
b=banana
c=cherry
Andere oplossingen  
 
programming4us programming4us