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.

这 样 挺 好 ; 但 是 对 大 程 序 来 说 , 你 很 快 就 会 忘 记 代 码 中 在 那 里 使 用 了 全 局 变 量 。 如 果 你 愿 意 ,你 可 以 禁 止 随 机 地 使 用 全 局 变 量 , 你 可 以 用 下 一 节 描 述 的 use strict 'vars' 用 法 来 达 到 这个 目 的 。尽 管 my 和 local 都 提 供 了 某 种 程 度 的 保 护 , 总 的 来 说 你 还 是 应 该 优 先 使 用 my。 当 然 ,有 时 候 你 不 得 不 用 local 来 临 时 改 变 一 个 现 有 全 局 变 量 的 值 , 就 象 我 们 在 第 二 十 八 章 , 特殊 名 字 , 里 列 出 来 的 那 样 。 只 有 字 母 数 字 标 识 符 才 能 处 于 词 法 范 围 , 而 那 些 特 殊 变 量 有 许 多并 不 是 严 格 的 字 母 数 字 。 你 也 需 要 用 local 来 对 一 个 包 的 符 号 表 做 临 时 的 修 改 —— 象 我 们在 第 十 章 “ 符 号 表 ” 里 显 示 的 那 样 。 最 后 , 你 可 以 把 local 用 在 数 组 或 散 列 的 单 个 元 素 或 者整 个 片 段 上 。 甚 至 当 数 组 或 散 列 是 词 法 变 量 的 时 候 也 能 这 么 干 , 这 时 候 是 把 local 的 动 态范 围 建 筑 在 那 些 词 法 ( 变 量 ) 的 上 层 。 我 们 不 会 在 这 里 就 local 的 语 义 讲 得 太 多 。 参 阅 第 二十 九 章 的 local 获 取 更 多 知 识 。4.8 用 法 (pragmas)许 多 编 程 语 言 允 许 你 给 编 译 器 一 些 提 示 或 暗 示 。 在 <strong>Perl</strong> 里 , 这 些 暗 示 是 用 use 声 明 交 给编 译 器 的 。 一 些 用 法 是 :use warning;use strict;use integer;use bytes;use constant pi => ( 4* atan2(1,1) );<strong>Perl</strong> 的 用 法 都 在 第 三 十 一 章 , 用 法 模 块 , 里 描 述 。 这 里 我 们 只 是 讲 几 个 和 本 章 的 内 容 关 系非 常 密 切 的 用 法 。虽 然 有 几 个 用 法 是 全 局 声 明 , 它 们 对 全 局 变 量 或 者 对 当 前 包 有 影 响 , 但 其 他 大 部 分 用 法 都 是词 法 范 围 里 声 明 的 , 其 影 响 范 围 只 是 伸 展 到 闭 合 块 的 结 尾 , 文 件 或 者 eval( 先 到 为 准 )。一 个 词 法 范 围 的 用 法 可 以 在 内 层 范 围 里 用 no 声 明 取 消 ,no 的 用 途 和 use 一 样 , 只 是 作用 正 相 反 。4.8.1 控 制 警 告为 了 显 示 这 些 东 西 如 何 运 行 , 我 们 将 操 纵 warnings 用 法 , 告 诉 <strong>Perl</strong> 是 否 就 有 问 题 的 东西 发 出 警 告 :142

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

Saved successfully!

Ooh no, something went wrong!