Thread Pendent zu require mit eigenem Namensraum (20 answers)
Opened by bianca at 2012-07-27 12:47

bianca
 2012-07-28 08:12
#160279 #160279
User since
2009-09-13
6978 Artikel
BenutzerIn

user image
Kann ich denn der test2.pl trotzdem irgendwie ermöglichen, auf sub's der test.pl zuzugreifen?
Ich weiß, dass ich dies bewerkstelligen könnte, indem ich sie über main::hauptsub(); anspreche.
Aber Ziel dabei sollte sein, dass Code der test2.pl nicht geändert werden muss.
Geht das auch?
test.pl
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/usr/bin/perl
use strict;
use warnings;

sub hauptsub {
print "foobar\n";
}

{
package test2;
require 'test2.pl';
}

sub test {
print "foo\n";
}

test();
test2::test();

test2.pl:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
#!/usr/bin/perl
use strict;
use warnings;

hauptsub();
#main::hauptsub(); würde funktionieren, soll aber vermieden werden

sub test {
print "bar\n";
}
1;

Quote
Undefined subroutine &test2::hauptsub called at test2.pl line 5.
10 print "Hallo"
20 goto 10

View full thread Pendent zu require mit eigenem Namensraum