使用Tie :: namespace的perl模块的常见想法是什么?

问题描述 投票:4回答:2

在CPAN上有很多带Tie::namespace的模块 - Tie::HashTie::SubTie::CacheTie::DBI等。它们之间有什么共同之处?

我检查了perltie但是我不确定我是否理解这个概念。有人可以解释一下吗?

perl naming tie
2个回答
9
投票

Tie :: namespace中的模块分为两类:

  • 实现变量可以绑定的类的那些(例如Tie::DBI),和
  • 那些帮助用户建立这样的类(例如Tie::Hash)。

tie允许对象采用变量的接口。当您从绑定变量中读取时,实际上是在调用一种方法来检索信息。当您写入绑定变量时,实际上是在调用方法来获取信息。

例如,让我们看看绑定到Tie :: DBI的哈希。

  • 列出散列的键时,将调用一个方法,该方法将获取数据库表的每一行的主键。
  • 当您获取哈希元素的值时,将调用一个方法来获取数据库表的指定行。
  • 在创建/设置哈希元素的值时,会调用一个方法来创建/设置数据库表的指定行的字段。

3
投票

它只包括搭售哈希,但我的article on perl.com from 2001可能会回答几个问题。

© www.soinside.com 2019 - 2024. All rights reserved.