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.

运 行 的 时 候 , 这 个 程 序 打 印 出 "y z o p q r s t u v w x"。 这 个 类 提 供 一 个 只 有 一 打 位 置的 数 组 , 类 似 一 个 时 钟 的 小 时 数 , 编 号 为 0 到 11。 如 果 你 请 求 第 十 五 个 元 素 , 你 实 际 上获 得 第 三 个 。 把 它 想 象 成 一 个 旅 游 助 手 , 用 于 帮 助 那 些 还 没 有 学 会 如 何 读 24 小 时 时 钟 的 人 。14.2.1 数 组 捆 绑 方 法前 面 的 是 简 单 的 方 法 。 现 在 让 我 们 看 看 真 正 的 细 节 。 为 了 做 演 示 , 我 们 将 实 现 一 个 数 组 , 这个 数 组 的 范 围 在 创 建 的 时 候 是 固 定 的 。 如 果 你 试 图 访 问 任 何 超 出 该 界 限 的 东 西 , 则 抛 出 一 个例 外 。 比 如 :use BoundedArray;tie @array, "BoundedArray", 2;$array[0] = "fine";$array[1] = "good";$array[2] = "great";$array[3] = "whoa"; # 禁 止 , 显 示 一 个 错 误 信 息 。这 个 类 的 预 定 义 的 代 码 如 下 :package BoundedArray;use Carp;use strict;为 了 避 免 稍 后 定 义 SPLICE, 我 们 将 从 Tie::Array 类 中 继 承 :use Tie::Array;our @ISA = ("Tie::Array");CLASSNAME->TIEARRAY(LIST)是 该 类 的 构 造 器 ,TIEARRAY 应 该 返 回 一 个 赐 福 了 的 引 用 , 通 过 该 引 用 模 拟 这 个 捆 绑 了 的数 组 。360

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

Saved successfully!

Ooh no, something went wrong!