1
$\ = "\n";
sub foo
{
print("one");
}
foo(); // mark1
sub foo
{
print("two");
}
foo(); //mark2
在執行上面的代碼時,您的輸出將是:two,two。據我所知Perl是一個解釋器,所以當foo(mark1)被調用時,不應該先打印出來,並且當調用foo()(mark2)時,必須打印兩個。但是爲什麼兩個人同時打印,請解釋一下?Perl函數調用
你確定你沒有編譯它嗎? – Carcigenicate
''//在Perl中不是註釋。你必須使用'#'來表示註釋。 – simbabque
定期推薦在每個Perl 5文件的開頭始終添加'use warnings'和'strict strict',直到您確切知道爲什麼推薦它。 –