ben yazdım özelleştirilmiş karşılaştırma altprogramıyla sort
kullanıyorum: bazen daha argümanları almak benim special_compare
istiyorumBağımsız değişkenleri Perl'deki sıralama alt yordamına iletebilir miyim?
sub special_compare {
# calc something using $a and $b
# return value
}
my @sorted = sort special_compare @list;
Ben iyi kullanım $a
ve otomatik olarak ayarlanır $b
olduğunu biliyorum, ama, örneğin:
sub special_compare {
my ($a, $b, @more) = @_; # or maybe 'my @more = @_;' ?
# calc something using $a, $b and @more
# return value
}
Bunu nasıl yapabilirim?
+1 güzel ve basit! –
Her zaman kopyalanmasını durdurmak için '@ daha 'bir referansı iletmek isteyebilirsiniz. –
Ya da uygunsa, bir alt çağırmak yerine hat içi kodu kullanın. – mscha