13.07.2015 Views

Perl 语言编程 - Linux教程

Perl 语言编程 - Linux教程

Perl 语言编程 - Linux教程

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

(CHECK 可 以 理 解 为 “ 检 查 点 ” 或 者 “ 仔 细 检 查 ”或 者 就 是 “ 停 止 ”。)• INIT在 你 的 程 序 的 主 流 程 开 始 执 行 之 前 运 行 。• END在 程 序 执 行 结 束 之 后 运 行 。如 果 你 声 明 了 多 于 一 个 这 样 的 同 名 语 句 块 , 即 使 它 们 在 不 同 的 模 块 里 ,BEGIN 也 都 是 在CHECK 前 面 运 行 的 , 而 CHECK 也 都 是 在 INIT 前 面 运 行 , 以 及 INIT 都 在 END 前 面——END 都 是 在 最 后 , 你 的 主 程 序 退 出 的 时 候 运 行 , 多 个 BEGIN 和 INIT 以 声 明 的 顺序 运 行 (FIFO), 而 CHECK 和 END 以 相 反 的 顺 序 运 行 (LIFO)。下 面 的 可 能 是 最 容 易 演 示 的 例 子 :#! /usr/bin/perl -lprintdiedie"start main running here";"main now dying here\n";"XXX: not reached\n";END { print "1st END: done running" }CHECK { print "1st CHECK : done compiling" }INIT { print "1st INIT: started running" }END { print "2nd END: done running" }BEGIN{ print "1st BEGIN: still compiling"}INIT { print "2nd INIT: started running" }BEGIN{ print "2nd CHECK: done compiling"}END { print "3rd END: done running"}如 果 运 行 它 , 这 个 演 示 程 序 输 出 下 面 的 结 果 :488

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!