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.

$def = 1;last SWITCH;};/^xyz/ && do {$xyz = 1;last SWITCH;};}甚 至 可 以 是 更 恐 怖 的 :if (/^ac/) {$abc = 1}elseif (/^def/) { $def = 1 }elseif (/^xyz/) { $xyz = 1 }else {$nothing = 1}在 下 面 的 例 子 里 , 请 注 意 last 操 作 符 是 如 何 忽 略 并 非 循 环 的 do{} 块 , 并 且 直 接 退 出 for循 环 的 :for ($very_nasty_long_names[$i++][$j++]->method()) {/this pattern/ and do { push @flags, '-e'; last; };/that one/ and do { push @flags, '-h'; last; };/something else/ and do {last;};die "unknown value: `$_'";}只 对 单 个 值 进 行 循 环 , 可 能 你 看 起 来 有 点 奇 怪 , 因 为 你 只 是 走 过 循 环 一 次 。 但 是 这 里 利 用for/foreach 的 别 名 能 力 做 一 个 临 时 的 , 局 部 的 $_ 赋 值 非 常 方 便 。 在 与 同 一 个 很 长 的 数 值进 行 重 复 地 比 较 的 时 候 , 这 样 做 更 容 易 敲 键 而 且 更 不 容 易 敲 错 。 这 样 做 避 免 了 再 次 计 算 表 达130

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

Saved successfully!

Ooh no, something went wrong!