0
我試圖將參數發送給一個函數,然後在該函數中,加入參數來創建一個字符串。加入參數 - Perl
我想
method send_data(\@args) {
my $string = join('%', @args);
print $string . '\n';
}
send_data('test1', 'test2', 'test3');
的代碼,我知道我能做到這樣:
my @params = ('test1', 'test2', 'test3');
send_data(\@params);
但我更喜歡第一種方法。如果沒有Method::Signatures
,您可以這樣做:
sub send_data {
my (@args) = @_;
my $string = join('%', @args);
print $string . '\n';
}
send_data('test1', 'test2', 'test3');
幫助?
我沒有定期使用'method'語法,但是在我看來,簽名需要一個arrayref,但是您要發送一個參數列表。在你的第一個例子中,括號裏面的['test1','test2','test3']'可能有幫助嗎?無論如何,請編輯您的問題更加精確! – 2015-03-19 08:52:37
@Biffen:不,它沒有。你正在考慮賦值給一個標量變量。 '我(@args)= @ _'和'my @args = @ _'表現完全一致。 – Borodin 2015-03-19 10:37:18
@Borodin當然。 Mea culpa。 – Biffen 2015-03-19 10:48:43