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.

sub handler {my ($orig, $intergp, $context) = @_;return $interp * 2;# 所 有 常 量 翻 番}1;请 注 意 该 handler ( 句 柄 ) 由 两 个 键 字 共 享 , 在 这 个 例 子 里 运 行 得 不 错 。 现 在 当 你 说 :use DigitDoubler;$trouble = 123; # trouble 现 在 是 246$jeopardy = 3.21; # jeopardy 现 在 是 6.42你 实 际 上 把 所 有 东 西 都 改 变 了 。如 果 你 截 获 字 串 常 量 , 我 们 建 议 你 同 时 提 供 一 个 连 接 操 作 符 ("."), 因 为 所 有 代 换 过 的 表达 式 , 象 "ab$cd!!", 仅 仅 只 是 一 个 更 长 的 'ab'.$cd.'!!' 的 缩 写 。 类 似 的 , 负 数 被 类 似 的 ,负 数 被 认 为 是 正 数 常 量 的 负 值 , 因 此 , 如 果 你 截 获 整 数 或 者 浮 点 数 , 你 应 该 给 neg 提 供 一个 句 柄 。( 我 们 不 需 要 更 早 做 这 些 , 因 为 我 们 是 返 回 真 实 数 字 , 而 不 是 重 载 的 对 象 引 用 。)请 注 意 overload::constant 并 不 传 播 进 eval 的 运 行 时 编 译 , 这 一 点 可 以 说 是 臭 虫 也 可以 说 是 特 性 —— 看 你 怎 么 看 了 。13.7 公 共 重 载 函 数对 <strong>Perl</strong> 版 本 5.6 而 言 ,use overload 用 法 为 公 共 使 用 提 供 了 下 面 的 函 数 :1. overload::StrVal(OBJ):这 个 函 数 返 回 缺 少 字 串 化 重 载 ("") 时 OBJ 本 应 该 有 的 字 串 值 。2. overload::Overloaded(OBJ):如 果 OBJ 经 受 了 任 何 操 作 符 重 载 , 此 函 数 返 回 真 , 否 则 返 回 假 。345

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

Saved successfully!

Ooh no, something went wrong!