Questione : problema con il sottoprogramma esterno

Sto avendo difficoltà using una biblioteca o un sottoprogramma esterna “di myutilities„ (non sure che sono i più semplici.  Essenzialmente, sto utilizzando il Perl in ubuntu ed ho uno scritto “di mymain.pl„ e voglio essenzialmente “procedare„ un altro scritto “load_vars.pl„ che carica un mazzo di variabili, quindi più successivamente “in mymain.pl„ voglio utilizzare un sottoprogramma esterno “in myutilities.lib„ o “in myutilities.pl„ (quale è il più facile).  Non sto cercando la riutilizzazione a lungo termine o qualcosa di simile di codice.  Sto osservando appena per ottenere questo asap.
I nuovo al Perl, ma realmente leveraging tutte le possibilità del regex.  Prego fornirmi lle certe indicazioni, ho provato “l'uso„, “richiedere„ ecc. e niente funziona.  Sono sicuro che questo è abbastanza facile.  Un esempio molto molto breve using quanto segue è appreciated.

print “: Sono in mymain.pl \ n„;
… variabili di caricamento del
print “…  Sono in ora \ n di load_vars.pl„;
print del
… “using i programmi di utilità…  Sono in ora \ n di myutilities„;
… estremità del
print “: Sono indietro in mymain.pl \ n„;

Thanks.
Chris
class= del

Risposta : problema con il sottoprogramma esterno

Se non volete usare “i vars di uso„ disapprovati potete passare le variabili alle procedure secondarie in myutilities.pl e in load_vars.pl, li restituite dopo che sono assegnati. In questo caso, dovete utilizzare una procedura secondaria in load_vars.pl
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
usare rigoroso;

mio ($a, $b, $c);
richiedere “load_vars.pl„;
richiedere “myutilities.pl„;
inizio della stampa “: Sono in mymain.pl \ n \ n„;
($a, $b, $c) = &load_vars;
&myutilities ($a);
estremità della stampa “: Sono in mymain.pl \ mymain che di NAND n le variabili caricate sono: \ na=$a \ nb=$b \ nc=$c \ n„;

load_vars.pl
#! /usr/bin/perl
usare rigoroso;

sub i load_vars {
  stampare “le variabili di caricamento…  Sono in ora \ n \ n di load_vars.pl„;
  mio $a = “mela„;
  mio $b = “banana„;
  mio $c = “ciliegia„;
  rinviare ($a, $b, $c);
}
1;

myutilities.pl
#! /usr/bin/perl
usare rigoroso;

sub i myutilities {
  mio ($a) = @_;
  stampa “using i programmi di utilità…  Sono in ora \ n di myutilities„.
  “e in myutilities a = $a \ n \ n„;
}
1;


Uscita:
[~ root@dm1] # ./mymain.pl
inizio: Sono in mymain.pl

variabili di caricamento…  Sono ora in load_vars.pl

using i programmi di utilità…  Sono ora in myutilities
e in myutilities a = mela

estremità: Sono in mymain.pl
e il mymain di n le variabili caricate è:
a=apple
b=banana
c=cherry
Altre soluzioni  
 
programming4us programming4us