问题标签 [subroutine]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
perl - 仅当文件尚未在 Perl 中打开时,如何才能打开它?
如果我有一个打开文件的子例程,那么确保它仅在第一次调用子例程时打开它的最佳方法是什么?我有这个但不确定它是否是最佳实践:
arrays - 为什么我的 Perl 在最后循环了一个?
我有这个程序没有按预期工作。帮我。
我想打印一个行标题。
如果输入是4
,我想1|2|3|4
被输出。
它不能完全起作用,如果我对$count
值进行硬编码,它会部分起作用,但最后一个数字丢失了。
perl - Perl 分析中的 CORE:match (opcode) 子例程是什么?
我之前在 Perl 中编写了一些实用程序,现在我正在重写它们以提供一些新的/更好的功能。然而,事情似乎比原来的实用程序慢得多,所以我决定用 NYTProf 分析器运行一个。顺便说一句,伟大的探查器,仍在试图找出所有有用的功能。
所以无论如何,事实证明我的程序 93% 的时间都花在了GeneModel::CORE:match (opcode)
对子例程的调用上,我不知道这是什么。大多数谷歌点击指向其他人发布的 NYTProf 个人资料。我确实编写了GeneModel
类/包,但我不知道这个子例程是什么,为什么它被调用了这么多次,或者为什么它需要这么长时间。有任何想法吗?
perl - () 在 Perl 的子程序定义中完成了什么?
以下代码直接取自 Tie::File 模块的源代码。在这种情况下,空括号在 O_ACCMODE 的定义中起到什么作用?我知道子程序原型的用途,但这种用法似乎与此无关。
perl - 为什么在子例程中调用 print 会将 1 附加到字符串?
我创建了以下子程序性别来随机打印字符串 MALE 或 FEMALE。当调用子程序时,打印命令在字符串末尾添加一个“1”后缀。请参阅下面的示例代码和输出:
请注意,“1”后缀为“MALE”或“FEMALE”
输出:
我正在使用perl v5.8.9 v5.8.9
为 MSWin32-x86-multi-thread 构建
Binary build 826 [290470] provided by ActiveState http://www.ActiveState.com Built May 24 2009 09:21:05
perl - 在 Perl 中封装递归函数
我有一个在这里运行良好的代码:
我想要做的是生成一个更通用的子程序,以便它只\%graph, $start,$end
作为输入并返回最终数组。
我试图这样做,但它没有编译。
正确的方法是什么?
perl - 如何内联 Perl 子例程?
我正在阅读Code Complete 2,其中提到的要点之一是关于创建子例程,即使对于那些看起来太简单而无法拥有自己的子例程的操作,以及这有什么帮助。
我知道我可以使用关键字在 C 和 C++ 中内联函数。inline
但是我从来没有遇到过在 Perl 中内联子程序的方法。
有没有办法告诉 Perl 解释器内联子例程调用(或者为什么不内联)?
perl - @_ 在 Perl 子例程中如何工作?
我一直确信,如果我给 Perl 子例程传递一个简单的标量,它就永远不会在子例程之外改变它的值。那是:
因此,如果我想foo()
更改x
,我必须将它的引用传递给x
.
然后我发现事实并非如此:
数组元素也是如此:
这让我有点吃惊。这是如何运作的?子程序不是只获取参数的值吗?它怎么知道它的地址?
perl - 为什么这行 Perl 本身只包含一个变量?
我越喜欢 perl,我越是喜欢它,但我对我在正在查看的模块的子例程中看到的一行有疑问。
让我感到震惊的是,这$var
一切都在一条线上。这只是一种迂回的返回方式1
吗?
非常感谢!
简
regex - 查找子程序的最后一个“}”
假设我有一个带有 Perl 代码的文件:有人知道,是否有一个模块可以在该文件中找到某个子例程的结束“}”。例如:
该模块应该能够删除整个routine_one,或者它应该可以告诉我该例程中关闭“}”的行号。