13.07.2015 Views

Perl 语言编程 - Linux教程

Perl 语言编程 - Linux教程

Perl 语言编程 - Linux教程

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

eturn @result;}一 些 读 者 希 望 能 够 看 到 完 整 的 字 母 数 字 函 数 原 型 . 我 们 有 意 把 字 母 数 字 放 在 了 原 型 之 外 , 为的 是 将 来 我 们 能 够 很 快 地 增 加 命 名 的 , 正 式 的 参 数 .( 可 能 ) 现 在 函 数 原 型 的 主 要 目 的 就 是让 模 块 作 者 能 够 对 模 块 用 户 作 一 些 编 译 时 的 强 制 参 数 检 查 .4.1 内 联 常 量 函 数带 有 () 的 函 数 原 型 表 示 这 个 函 数 没 有 任 何 参 数 , 就 象 内 建 函 数 time 一 样 . 更 有 趣 的 是 ,编 译 器 将 这 种 函 数 当 作 潜 在 的 内 联 函 数 的 候 选 函 数 . 当 <strong>Perl</strong> 优 化 和 常 量 值 替 换 回 合 后 , 得到 结 果 如 果 是 一 个 固 定 值 或 者 是 一 个 没 有 其 他 引 用 的 语 法 作 用 域 标 量 时 , 那 么 这 个 值 就 将 替换 对 这 个 函 数 的 调 用 . 但 是 使 用 &NAME 方 式 调 用 的 函 数 不 被 " 内 联 化 ", 然 而 , 只 是 因 为它 们 不 受 其 他 函 数 原 型 影 响 .( 参 看 第 三 十 一 章 " 用 法 模 块 " 中 的 use constant, 这 是 一 种定 义 这 种 固 定 值 的 更 简 单 的 方 法 ).下 面 的 两 种 计 算 ∏ 的 函 数 写 法 都 会 被 编 译 器 " 内 联 化 ":sub pi () { 3.14159 }sub PI () { 4 * atan2(1, 1) }# 不 准 确 , 但 接 近# 和 它 的 一 样 好实 际 上 , 下 面 所 有 的 函 数 都 能 被 <strong>Perl</strong> " 内 联 化 ", 因 为 <strong>Perl</strong> 能 够 在 编 译 的 时 候 就 能 确 定 所有 的 值 :sub FLAG_FOO () { 1

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

Saved successfully!

Ooh no, something went wrong!