Thread Verstänisproblem in Sachen 'use'
(7 answers)
Opened by Gast at 2008-05-20 17:49 Quote Ja... Der Sourcecode wird vor der ausführung geparsed und in bytecode umgewandelt. Machst du ein BEGIN { ... } Block irgendwohin dann wird dieser Block immer direkt nach der Umwandlung zu Bytecode ausgeführt. Sprich immer noch zur Compilierzeit. Ein use Statement ist entspricht "fast" einem BEGIN { ... } Block um einem "require" Befehl. Die Subroutine selber wird damit aber nicht ausgeführt. Quote Was soll ein EOF sein? Du musst in diesem Fall ein String eval nehmen. Also soetwas. Code: (dl
)
eval "use ABC" Allerdiengs würde ich auch lieber require nehmen da es anscheind genau das ist was du willst. Einziger Unterschied noch zu einem "use". Bei "use" wird noch automatisch die Subroutine "import" aus dem Package aufgerufen. Ein require macht das nicht. Hast du also ein Modul das Funktionen exportiert musst du danach noch Manuell "MODULNAME->import()" einmal aufrufen. Exportiert das Modul nichts oder möchtest du nicht in/ex-portieren kannst du den aufruf natürlich weg lassen. Nicht mehr aktiv. Bei Kontakt: ICQ: 404181669 E-Mail: perl@david-raab.de
|