, 0 argümanını iletirse, bunu aramak için 4 form kullanabilirim. 1 veya daha fazla argüman ileterek, ben kullanamıyorum ki bir biçim varsa Ama, lütfen aşağıya bakın:söz dizimi `& name arg1 arg2 ...` Perl alt yordamını çağırmak için neden kullanılamaz? Bir Perl alt programı için
sub name
{
print "hello\n";
}
# 4 forms to call
name;
&name;
name();
&name();
sub aname
{
print "@_\n";
}
aname "arg1", "arg2";
#&aname "arg1", "arg2"; # syntax error
aname("arg1", "arg2");
&aname("arg1", "arg2");
hata çıkışı
String found where operator expected at tmp1.pl line 16, near "&aname "arg1""
(Missing operator before "arg1"?)
syntax error at tmp1.pl line 16, near "&aname "arg1""
Execution of tmp1.pl aborted due to compilation errors.
birisi derleyici en hata çıkışını açıklayabilir bakış açısı? Eksik operatör hakkında neden şikayet ettiğini anlamıyorum.
Teşekkür
Harika bir cevabınız var. Bunun için '&' kullanımı hakkında daha fazla tartışma için bkz. ['Bu gönderi '] (http://stackoverflow.com/questions/1347396/when-should-i-use-the-to-call-a- perl-subroutine) ve ['bu yazı '] (http://stackoverflow.com/questions/8912049/difference-between-function-and-function-in-perl) ve [' this post'] (http: //stackoverflow.com/questions/6706882/using-ampersands-and-parens-when-calling-a-perl-sub) ... ve muhtemelen başkaları da var. – zdim
@zdim sadece merak ediyorum, neden bağlantıları kod işaretine koydunuz? – simbabque
@simbabque Hah, iyi nokta. Sanırım daha belirgin, vurgulanmışlar. Gerçekten bilmiyorum. Asla bunu "kod biçimlendirmesi" olarak düşünmediniz (haklısınız, bu) - ama daha çok vurgulandığı gibi. – zdim