内容

名称

Tie::Handle - 绑定句柄的基本类定义

概要

package NewHandle;
require Tie::Handle;

@ISA = qw(Tie::Handle);

sub READ { ... }		# Provide a needed method
sub TIEHANDLE { ... }	# Overrides inherited method


package main;

tie *FH, 'NewHandle';

说明

此模块为句柄绑定类提供了一些骨架方法。有关将句柄绑定到包所需函数的列表,请参见 perltie。基本的 Tie::Handle 包提供了一个 new 方法,以及 TIEHANDLEPRINTPRINTFGETC 方法。

对于希望编写自己的绑定句柄类的开发人员,下面总结了这些方法。 perltie 部分不仅记录了这些方法,还提供了示例代码

TIEHANDLE 类名,LIST

通过命令 tie *glob, classname 调用的方法。将一个新的 glob 实例与指定类关联。LIST 将表示完成关联所需的附加参数(类似于 AnyDBM_File 及其同类项)。

WRITE this,标量,长度,偏移量

偏移量 开始,从 标量 中写入 长度 字节的数据。

打印 LIST 中的值

PRINTF 此项,格式,LIST

使用 format 打印 LIST 中的值

READ 此项,标量,长度,偏移量

offset 开始读取 length 字节数据到 scalar 中。

READLINE 此项

读取单行

GETC 此项

获取单个字符

CLOSE 此项

关闭句柄

OPEN 此项,文件名

(重新)打开句柄

BINMODE 此项

指定内容为二进制

EOF 此项

测试文件结尾。

TELL 此项

返回文件中的位置。

SEEK 此项,偏移量,出处

定位文件。

测试文件结尾。

DESTROY 此项

释放与 this 引用的关联句柄相关的存储。这很少需要,因为 Perl 很好地管理其内存。但如果某个类希望在实例销毁时执行特定操作,则存在此选项。

更多信息

perltie 部分包含绑定句柄的示例。

兼容性

此版本的 Tie::Handle 与 CPAN 上提供的 Tie::Handle (3.0) 模块既不相关也不兼容。由于意外,出现了两个同名模块。命名空间冲突已针对 2000 年 9 月随 perl 核心提供的此模块而清除,因此版本号已提升至 4.0。