![]() |
|< 1 2 >| | ![]() |
17 Einträge, 2 Seiten |
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
package hiermeinpaket;
# funktioniert nur innerhalb des Pakets korrekt.
sub printSth () {
my $value=shift;
print $value;
}
# Hm... selbes Problem...funktioniet nur innerhalb des Pakets korrekt
sub printSth2 () {
print @_[0];
#print @[1];
}
# Funktioniert immer, aber so umständlich. Negativvergleich aus Perfomanegründen (hier nicht wichtig).
sub printSthDefinitely () {
my $value= shift;
$value = shift unless ($value ne 'hiermeinpaket');
print $value;
}
sub intern () {
my $text = 'hello welt';
&printSth1 ($text);
&printSth2 ($text);
&printSthDefinitely ($text);
}
&intern (); # läuft korrekt
##################################
package woanders;
sub extern () {
my $text = 'hello welt';
&hiermeinpaket::printSth1 ($text); # pfui
&hiermeinpaket::printSth2 ($text); # pfui
&hiermeinpaket::printSthDefinitely ($text); #hui
}
&extern (); # das Problem wird sichtbar.
sub vonHintenDurchDieBrust () {
my $text = 'hello welt';
package hiermeinpaket; # HÖ-HÖ
&printSth1 ($text);
&printSth2 ($text);
&printSthDefinitely ($text);
}
&vonHintenDurchDieBrust(); # TSE... alles fein?
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
52
53
package hiermeinpaket;
# funktioniert nur innerhalb des Pakets korrekt.
sub printSth1 () {
my $value=shift;
print $value;
}
# Hm... selbes Problem...funktioniet nur innerhalb des Pakets korrekt
sub printSth2 () {
print $_[0];
#print $_[1];
}
# Funktioniert immer, aber so umständlich. Negativvergleich aus Perfomanegründen (hier nicht wichtig).
sub printSthDefinitely () {
my $value= shift;
$value = shift unless ($value ne 'hiermeinpaket');
print $value;
}
sub intern () {
print "interner Aufruf\n";
my $text = "hello welt\n";
&printSth1 ($text);
&printSth2 ($text);
&printSthDefinitely ($text);
}
&intern (); # läuft korrekt
##################################
package woanders;
sub extern () {
my $text = "hello welt\n";
print "\nexterner Aufruf\n";
&hiermeinpaket::printSth1 ($text); # hui
&hiermeinpaket::printSth2 ($text); # hui
&hiermeinpaket::printSthDefinitely ($text); #hui
hiermeinpaket->printSth2 ($text); # pfui
hiermeinpaket->printSthDefinitely ($text); #hui
}
&extern (); # das Problem wird sichtbar.
sub vonHintenDurchDieBrust () {
print "\nBrustmethode\n";
my $text = "hello welt\n";
package hiermeinpaket; # HÖ-HÖ
&printSth1 ($text);
&printSth2 ($text);
&printSthDefinitely ($text);
}
&vonHintenDurchDieBrust(); # TSE... alles fein?
![]() |
|< 1 2 >| | ![]() |
17 Einträge, 2 Seiten |