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.

print STDERR "deleting!\n";if ($index > $self->{BOUND} ) {confess "Array OOB: $index > $self->{BOUND}";}delete $self->{DATA}[$index];}SELF->CLEAR当 这 个 数 组 需 要 清 空 的 时 候 调 用 这 个 方 法 。 当 该 数 组 设 置 为 一 列 新 值 ( 或 者 一 列 空 值 ) 的时 候 发 生 这 个 动 作 , 不 过 不 会 在 提 供 给 undef 函 数 的 时 候 发 生 这 个 动 作 。 因 为 一 个 清 空了 的 boundedArray 总 是 满 足 上 限 , 所 以 我 们 在 这 里 不 需 要 检 查 任 何 东 西 :sub CLEAR {my $self = shift;$self->{DATA} = [];}如 果 你 把 数 组 设 置 为 一 个 列 表 , 这 个 动 作 会 触 发 CLEAR, 但 是 看 不 到 列 表 数 值 。 因 此 如果 你 象 下 面 这 样 违 反 上 界 :tie(@array, "BoundedArray", 2);@array = (1,2,3,4);CLEAR 方 法 仍 将 返 回 成 功 。 而 只 有 在 随 后 的 STORE 中 才 会 产 生 例 外 。 这 样 的 赋 值 触 发一 个 CLEAR 和 四 个 STORES。SELF->PUSH(LIST)这 个 方 法 把 LIST 的 元 素 附 加 到 数 组 上 。 下 面 是 它 在 我 们 BoundedArray ?方 法 :类 里 的 运 行sub PUSH {364

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

Saved successfully!

Ooh no, something went wrong!