- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
出于好奇,我尝试了一些原型(prototype)制作,但似乎只允许在第一个位置使用子例程的原型(prototype) &
。
当我写作时
sub test (&$$) {
do_something;
}
并将其命名为
test {doing_something_else} 1,2;
有效。
当我这样制作原型(prototype)时
sub test ($$&) {
do_something;
}
再次称它为
test 1,2 {doing_something_else};
这是行不通的。我尝试了各种排列,但似乎没有任何效果。
我是不是遗漏了什么,或者这不可能?如果不是,为什么?
(我可能需要说明,我成功地尝试了调用 test(1, 2, sub{foo}) 的选项,当然,但它看起来不像上面最后一个示例中的选项那么吸引人(为此我什至不需要原型(prototype)设计);我希望能够实现像 if () {} else {} 等结构的语法,或者更重要的是,try () catch () {} 或 switch () case (){},但我想这就是为什么这些构造尚未在 Perl 中实现的原因)
最佳答案
&
原型(prototype)字符只有在它是原型(prototype)中的第一项时才采用 block 形式。这只是 perl 原型(prototype)解析器工作方式的一个限制。
您始终可以使用 sub
关键字来创建一个匿名子例程,该子例程在没有原型(prototype)的任何位置都可以作为参数正常工作。
test 1, 2, sub {doing_something_else};
如果你真的很想在没有 sub
但不是在第一个位置的情况下编写它,你可以玩 Devel::Declare 来为测试子例程编写你自己的解析规则(这是一个高级主题)。
关于perl - 是否可以在 perl 中将子例程原型(prototype)化为 $$&?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8364665/
出于好奇,我尝试了一些原型(prototype)制作,但似乎只允许在第一个位置使用子例程的原型(prototype) &。 当我写作时 sub test (&$$) { do_somethin
我需要开发一个类似于 Android Play 商店应用程序或类似 this app 的应用程序.我阅读了很多教程,发现几乎每个教程都有与 this one 类似的例子。 . 我已经开始使用我的应用程
考虑一个表示“事件之间的时间”的列: (5, 40, 3, 6, 0, 9, 0, 4, 5, 18, 2, 4, 3, 2) 我想将这些分组到 30 个桶中,但桶会重置。期望的结果: (0, 1,
我是一名优秀的程序员,十分优秀!