Thread abgedrehtes problem mit switch: oder bin ich blind? (71 answers)
Opened by deepblack at 2004-06-16 21:56

pq
 2004-07-07 17:56
#83490 #83490
User since
2003-08-04
12209 Artikel
Admin1
[Homepage]
user image
[quote=Dieter,07.07.2004, 15:39]@pq
Du kannst den BEGIN Block auch an das Ende des Scripts stellen.
Der Parser sucht zunächst einmal nach einem solchen Block/solchen Blöcken und ignoriert dabei alles was er 'vor' dem ersten BEGIN Block findet (so jedenfalls die einschlägige Literatur).
[/quote]
ich hab ja in meinem beispiel vorgeführt, dass z.b. ein my() nicht
ignoriert wird. ein my ist keine herkömmliche funktion, sondern eben auch
eine anweisung an den parser. wenn es ignoriert würde, würde das ganze
nicht mit strict laufen.
ansonsten versteh ich nicht (ich versteh's wirklich nicht), was du nun
für eine aussage machen möchtest.
mein beispiel mit strict laufen zu lassen hat jedenfalls keinen gedankenfehler
meinerseits offenbart.
ansonsten kannst du ja selbst einmal ein code-beispiel mit ausgabe posten,
um eine aussage von dir zu untermauern.

edit:
im übrigen ist es unmöglich, den rest des codes zu ignorieren und nur BEGIN
auszuführen. um einen BEGIN-block zu finden, musst du einfach den code
bis dahin geparsed haben. ein gezieltes suchen nach BEGIN {} würde
ja etwa auch
my $string = qq/
BEGIN {
 blabla
}/;

finden. und so verstehe ich auch die 'einschlägige literatur': der gesamte code
vor BEGIN ist schon geparsed.\n\n

<!--EDIT|pq|1089208892-->
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem

View full thread abgedrehtes problem mit switch: oder bin ich blind?