在Perl中调用子例程的非标准方式
发布时间:2020-12-16 06:10:36 所属栏目:大数据 来源:网络整理
导读:我正在尝试一种在Perl脚本中调用子例程的不同方法. 我有一组功能如下: sub Testcase_CheckStatus { print "TestCase_CheckStatus calledn";} 然后我用“CheckStatus”这样的键遍历Perl哈希: while (my ($k,$v) = each %test_cases) { print "TestCase_$k"
我正在尝试一种在Perl脚本中调用子例程的不同方法.
我有一组功能如下: sub Testcase_CheckStatus { print "TestCase_CheckStatus calledn"; } 然后我用“CheckStatus”这样的键遍历Perl哈希: while (my ($k,$v) = each %test_cases) { print "TestCase_$k","n"; Testcase_$k(); } 基本上,我想在解析哈希的键时调用上面的函数Testcase_CheckStatus,但是我收到了这个错误:
我该怎么做才能解决这个问题?有没有其他方法可以做同样的事情? 解决方法
以下应该可以让你做你想做的事:
while (my ($k,"n"; &{"Testcase_$k"}(); } 但是,如果严格使用,这将不起作用.如果你使用strict,你需要在while循环中使用no strict,例如: while (my ($k,$v) = each %test_cases) { no strict 'refs'; print "TestCase_$k","n"; &{"Testcase_$k"}(); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |