sort 也可能指函數:sort

內容

名稱

sort - Perl 實用程式用於控制 sort() 行為

語法

sort 實用程式現在是 no-op,不建議使用。以下三個操作有效,但沒有作用

use sort 'stable';		# guarantee stability
use sort 'defaults';	# revert to default behavior
no  sort 'stable';		# stability not important

說明

從歷史來看,sort 實用程式可以控制內建 sort() 函數的行為。

在 v5.28.0 之前,還有兩個其他選項

use sort '_mergesort';
use sort '_qsort';		# or '_quicksort'

如果您嘗試在 v5.28+ 中指定其中任何一個,它將會 croak。

預設排序自 v5.8.0 以來一直很穩定,並且在近二十年的時間裡一直保持這種一致的行為,每個人都假設穩定性。

穩定性將保持預設 - 因此不需要實用程式讓程式碼選擇穩定性「以防」這會改變 - 它不會改變。

我們預計不會再提供多種一般用途排序的實作 - 因此未來不需要提供實用程式在它們之間進行選擇。

如果您知道您非常關心排序的效能,且對您的使用案例和資料來說,值得研究其他替代方案,有可能從我們的預設值中找出一個更好的替代方案,而且切換的成本是值得的,那麼您就比我們了解得更多。我們能提供的任何選擇可能都不如您自己實作的好。(例如,基數排序可以比 O(n log n) 更快,但無法用於所有金鑰,而且有較大的開銷。)

我們不反對變更排序演算法,但我們不認為提供兩個通用實作的選擇有什麼好處。

注意事項

函式 sort::current() 用於回報排序語用的目前狀態。這個函式並未匯出,而且 CPAN 中沒有呼叫它的程式碼。它現在已不建議使用,而且預設會發出警告。

由於我們不再儲存任何排序「狀態」,它無法再回傳正確的值,所以它將永遠回傳字串 stable,因為這與我們實際實作的內容一致。