是否有与Perl的
$_
函数相当的东西?我正在用C#重写一些旧的perl脚本,但我从未学过任何perl。以下是我正在尝试弄清楚的示例。sub copyText {
while($_[0]){
$_[1]->Empty();
$_[0] = $_[1]->IsText();
sleep(1);
}
$_
。$_[0]
和$_[1]
是数组@_
的第一个和第二个元素。@_
是传递给子程序的参数列表。@_
的元素被别名到实际的参数(通过引用传递),而不是被复制(通过值传递)。 - ikegami$_[0]
引用了数组@_
?还是OP的代码有问题? - cadrell0$a[0]
就像C的a[0]
一样。数组将使用my @a;
声明。my $a;
将是标量(NULL(称为undef),字符串,有符号整数,无符号整数,浮点数,引用(包括对象、文件句柄等等))。my %a;
将是一个哈希表。 - ikegami$a[0]
评估为标量($
)和@a
评估为列表(数组(@
)类似于列表),但这并不完全成立。 - ikegami$a[$i]
),也可以检索多个元素(@a[$i,$j,$k]
,称为切片)。不同的语法是必需的,因为$a[f()]
和@a[f()]
在不同的上下文中评估f()
。 - ikegami