如何取消引用哈希引用

2023-12-14

更新:我所知道的关于引用/取消引用的一切都来自这里:http://www.thegeekstuff.com/2010/06/perl-array-reference-examples/

我正在使用一个库(来自库文档):

Returns a reference to an array of hash references

这在概念上对我来说是有意义的(我对编程并不陌生),但在功能上没有意义(显然,我对 perl 很陌生)。

这是一些代码:

my $Obj  = QA::STK::ModuleImUsing->new(arguments, to, new);
$Obj->createClient();
$Obj->sync( ['/tmp/files/...']);
my $result = $Obj->method_in_question(['/tmp/files/ff-latest.xml']);

到目前为止,一切都很好。$result现在保存对数组的引用。

所以当我这样做时:

print "Result: @{ $result} \n";

I get:

Result: HASH(0x20d95b0)

迷人的!但我仍然需要取消引用哈希。然而,这就是事情变得奇怪的地方(或者也许它们已经变得奇怪了?)。

my $hash_ref = @{ $result};
print Dump($hash_ref));

我明白了:

$VAR1 = 1;

这……根本不是我所期待的。

我的期望是错误的还是我以错误的方式取消引用事物?


If @$result是一个数组,那么你的 LHS 必须是一个列表。否则$hashref将被分配数组大小。

my ($hash_ref) = @{ $result};
print Dump($hash_ref));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何取消引用哈希引用 的相关文章

  • 从函数返回哈希值的最佳 Perl 实践是什么?

    我正在考虑将哈希引用传递给函数或从函数返回数据的最佳实践 一方面 仅将输入值传递给函数并仅返回输出变量似乎很直观 然而 在 Perl 中传递哈希值只能通过引用来完成 因此有点混乱 而且似乎更有可能犯错误 另一种方法是在输入变量中传递引用 但
  • 在 Perl 中检测全局破坏

    我想检测我的物体是否被DESTROY作为全局破坏的一部分 并打印出警告 因为这显然是一个错误并导致数据丢失 显而易见的方法似乎是 sub DESTROY my self shift if i am in global destruction
  • 是否存在可以保证哈希算法唯一的情况?

    如果我使用字节大小大于数据 例如 sha 256 的哈希算法对大小受限的类似数据 例如社会安全号码 进行哈希处理 哈希是否能保证与数据具有相同级别的唯一性 原始数据 哈希冲突的概率与输入字符串的大小无关 除非它指示需要多少个输入来保持唯一性
  • 在哪里可以找到将现有 CPAN 模块转换为使用 Dist::Zilla 的简明指南?

    我曾多次阅读过相关文档和一些博客文章地区 齐拉 http search cpan org dist Dist Zilla 我从来没有对自己的理解充满信心 在回答另一个问题时 Ether 提出了转换的可能性地穴 SSLeay http sea
  • 使用perl创建层次结构文件

    我的任务是使用 perl 创建父子层次结构文件 示例输入文件 制表符分隔 记录将以随机顺序排列在文件中 父项 可能出现在 子项 之后 S5 S3 S5 S8 ROOT S1 S1 S7 S2 S5 S3 S4 S1 S2 S4 77 S2
  • 如何加速我的 Perl 程序?

    这确实是两个问题 但它们非常相似 为了简单起见 我想我应该把它们放在一起 Firstly 给定一个已建立的 Perl 项目 除了简单的代码优化之外 还有哪些不错的方法可以加速它 Secondly 用Perl从头开始编写程序时 有哪些好的方法
  • Perl:模板工具包的替代品

    我使用模板工具包来扩展现有的领域特定语言 verilog 已经超过 3 年了 虽然总的来说我对此感到满意 但主要的刺激性是 当出现语法 undef 错误时 错误消息不包含用于调试错误的正确行号信息 例如我会收到一条消息 指示 0 未定义 因
  • MD5 哈希怎么可能无法“解密”呢? [复制]

    这个问题在这里已经有答案了 可能的重复 为什么 MD5 哈希值不可逆 https stackoverflow com questions 330207 how come md5 hash values are not reversible
  • 如何在 Perl 中找到正则表达式匹配的位置?

    我需要编写一个接收字符串和正则表达式的函数 我需要检查是否有匹配并返回匹配的开始和结束位置 正则表达式已经由qr 该函数还可能收到一个 全局 标志 然后我需要返回所有匹配的 开始 结束 对 我无法更改正则表达式 甚至无法添加 用户可能使用的
  • 如何 grep 遍历数组,同时过滤掉匹配项?

    有没有一种快速简便的方法来 grep 遍历数组 找到满足某些测试的元素and从原始数组中删除这些 例如我想要 a 1 7 6 3 8 4 b grep filter gt 5 a now b 7 6 8 and a 1 3 4 换句话说 我
  • 为什么这个特定 Perl 脚本的线程版本比非线程版本慢 200 倍?

    A 推介会 http migo sixbit org papers Perl Threads by 米哈埃尔 戈伊克曼 http migo sixbit org 2003 年 Perl 会议上的文档包含两个质数查找脚本的示例 One htt
  • 数字签名(PKCS#7 - 延迟签名)/自应用签名以来文档已被更改或损坏

    我已经浏览了所有类似的问题 但找不到应用 itextsharp 延迟签名的情况 基本上 我的应用程序使用以下方式签署 pdf 文档PKCS 7由远程 Web 服务创建的签名 我的应用程序向此 Web 服务发送原始文档的哈希值 添加空签名字段
  • 在 Perl 中查找数组的大小

    我似乎遇到过几种不同的方法来查找数组的大小 这三种方法有什么区别呢 my arr 2 print scalar arr First way to print array size print arr Second way to print
  • 在 Perl 中实现 CLI 工具的最佳实践是什么?

    我正在使用 Perl 实现 CLI 工具 我们可以遵循哪些最佳实践 作为前言 我花了 3 年时间为一家大型金融公司设计并实现了一个相当复杂的 Perl 命令行工具集 以下想法基本上是我们团队设计指南的一部分 用户界面 命令行选项 允许尽可能
  • 在 Perl 中确定范围重叠的最快方法

    我有两组范围 每个范围都是一对整数 开始和结束 表示单个较大范围的某些子范围 两组范围的结构与此类似 当然 将替换为实际数字 a ranges a 1 gt start gt end gt a 2 gt start gt end gt a
  • 从 HoA 值中获取独特元素并打印

    我有一个 HoA 其中包含某些值 我只需要 HoA 中的独特元素 预期结果 Key 1 Element ABC DEF Key 2 Element XYZ RST Key 3 Element LMN 下面是我的脚本 usr bin perl
  • 检测重复文件

    我想检测目录树中的重复文件 当发现两个相同的文件时 将仅保留其中一个重复文件 并删除其余的重复文件以节省磁盘空间 重复是指具有相同内容的文件 但文件名和路径可能不同 我正在考虑为此目的使用哈希算法 但不同的文件有可能具有相同的哈希值 因此我
  • Log4Perl 将多个程序的日志记录捆绑到一个日志中

    CPAN 上是否有任何 Logger 它允许我将多个程序的日志捆绑到一个文件中 并在两个程序同时运行并并行调用 log4Perl 时同步并行日志记录 背景是我使用一个自定义附加程序来写入电子邮件 我想将所有电子邮件捆绑在一个文件中作为备份
  • Perl:散列 2 中数组的数值排序(施瓦茨变换)

    这实际上是该线程的后续内容 Perl 散列中数组的数字排序 https stackoverflow com questions 7914931 perl numerical sort of arrays in a hash 我无法编辑原始问
  • 如何在 Perl 中将多个哈希值合并为一个哈希值?

    在 Perl 中 我如何得到这个 VAR1 999 gt 998 gt 908 906 0 998 907 VAR1 999 gt 991 gt 913 920 918 998 916 919 917 915 912 914 VAR1 99

随机推荐

  • C# 被视为上下文无关语言吗?

    我一直在寻找这个问题 但是这个问题在网上有很多不同的答案MSDN 论坛 有人说 所有计算机语言语法都是上下文无关的 还有人说任何具有空白敏感语法的语言都可能是上下文相关的 因此不是上下文无关的 F 和 Python 会好的明确的答案也许还有
  • 具有不同 base_site.html 的多个管理站点

    我希望有多个管理站点 每个站点都有不同的基本模板 我可以创造admin base site html并将该路径添加到TEMPLATE DIRS在前面 以便base site html优先 但它会覆盖多个管理站点 有没有办法自定义每个管理站点
  • 如何在 R 中保存 data.frame?

    我在 R 中制作了一个不是很大的 data frame 但构建起来需要相当长的时间 我想将它保存为一个文件 然后我可以在 R 中再次打开它吗 有几种方法 一种方法是使用save 保存确切的对象 例如用于数据框foo save foo fil
  • 仅解析大型 JSON 字符串中的一个字段

    我有一个以下格式的 JSON 字符串 foo small vale baz large value bar another large value 如何高效提取foo而忽略其余字段 基本上 我使用 Gson 并定义了一个 精益类 如下所示
  • QWebEngineView 中的 Qt 事件传播

    我有一个名为generate input event 我正在尝试使用此函数来模拟 QWebEngineView 中的按键 def generate input event window id key code modifiers low l
  • 验证和认证的区别?

    如您所知 我们通过以下方式向卡证明我们是真实用户INITIAL UPDATE and EXTERNAL AUTHENTICATION命令 如下 lt 80 50 00 00 08 Host Challenge gt lt 84 82 03
  • Android Proguard SqlCipher NoClassDefFoundError

    一整天都在与 Proguard 作斗争 并在 Proguard 官方网站以及 StackOverflow 上尝试了许多示例和解决方案 我有一个需要混淆的大型项目 其中有许多引用的库项目和 Jars 我从 2 个库 com google co
  • 在没有“编辑”按钮的情况下在表格视图中编辑操作?

    我想在我的表格视图 加载时 中显示所有行 并带有红色标记 负号 UITableViewCellStateShowingDeleteConfirmationMask 换句话说 如果我单击红色标记 它必须在表视图中显示该特定行的删除按钮 编辑按
  • ExtJS。隐藏容器内的所有组件

    我有一个窗口 在其中渲染许多组件 例如面板等 有没有办法可以隐藏窗口中包含的所有组件 而不必单独隐藏它们 就像是 Ext getComponent myWindow hideAllComponents 我正在使用 extjs 3 4 如果我
  • 'false'可以匹配mysql中的某个字符串吗?

    我有一个这样的表 CREATE TABLE IF NOT EXISTS session id int 11 NOT NULL AUTO INCREMENT token varchar 32 NOT NULL profile varchar
  • 如何像 Ola 应用程序一样在 Google 地图上移动标记

    我正在开发像 Ola cabs 这样的应用程序 当用户拖动地图时 会出现一个视图透明视图 并且标记会移动 当用户停止拖动时 我们必须将 gmscamera 位置居中 就像 ola cab 应用程序一样 这是未拖动地图时的图像 拖动后 我使用
  • 为什么setParameter没有设置参数?

    我正在使用以下代码 尝试 查询数据库 Query query session createQuery from Trace where service service query setParameter service clientReq
  • 警告:mysqli_connect():(HY000/1045):用户“root”@“localhost”的访问被拒绝(使用密码:NO)[重复]

    这个问题在这里已经有答案了 PHP 警告 mysqli connect HY000 1045 用户访问被拒绝 root localhost 使用密码 NO G PleskVhosts peacewithoutlimits org httpd
  • 是否可以从 C++ 调用 Dart 方法?

    如何从C 代码中调用Dart方法 我想尝试在我的应用程序中使用 Dart 作为脚本语言 你有两种可能性 首先 你可以将 Dart VM 嵌入到您的 C 程序中 See 这次讨论 有一个 GitHub 示例 这允许您用 C 编写程序并运行 D
  • 在 sas 宏文件名管道中使用引号

    我正在使用以下使用文件名管道的宏 但出现错误 提示无效选项名称 dir 等 我怀疑这可能是由于定义文件名和管道时的引号所致 我想它会将其识别为一个选项 我尝试删除引号 删除 bquote 并仅使用双引号 但仍然不断出现错误 我正在使用 Wi
  • 读取序列时未创建输出文件

    因此 当它运行时 应该将 fasta 文件的输出缩短为几个序列 并将该输出放入文本文件中 但我遇到的问题是输出文件未创建 我不知道是什么错误在脚本内 我将在下面发布我的代码以供参考 感谢您阅读本文 如果您愿意的话 usr bin perl
  • 使用 jQuery 修改表结构(合并单元格)

    我有一张桌子 table tr td 9 00 td td task1 td tr tr td 10 00 td td td tr tr td 11 00 td td task2 td tr tr td 12 00 td td task3
  • Java 转义 HTML - 字符串替换慢?

    我有一个 Java 应用程序 它大量使用大文件来读取 处理并传递给 SolrEmbeddedServer http lucene apache org solr 其中一个函数执行基本的 HTML 转义 private String html
  • Autodesk Forge:工作项因 AppPackage 问题而失败

    我的 AppPackage 无法加载 并且我无法在文档或错误消息 代码中找到确切的答案 我通过将其解压缩到本地计算机上的 C Program Files Autodesk ApplicationPlugins 中来测试该捆绑包 并且它按预期
  • 如何取消引用哈希引用

    更新 我所知道的关于引用 取消引用的一切都来自这里 http www thegeekstuff com 2010 06 perl array reference examples 我正在使用一个库 来自库文档 Returns a refer