我試着用GLib的GenericArray
,Slist
,List
做一些排序。與sort_with_data
排序按預期工作,但當我嘗試Glib的Array
它不起作用,或者更確切地說,它做了一些不同的事情!GLIb數組排序,如何排序?
這是我對整數排序功能:
[indent=4]
init
var a = new Array of int
for i in new array of int = {3, 2, 1, 5, 7}
a.append_val (i)
a.sort_with_data (my_func)
for var i = 0 to (a.length - 1)
stdout.printf ("%d, ", a.index (i))
// 3, 2, 1, 5, 7,
stdout.putc ('\n')
a.sort (my_func)
for var i = 0 to (a.length - 1)
stdout.printf ("%d, ", a.index (i))
// 3, 2, 1, 5, 7,
def my_func (a: int, b: int): int
return a - b
輸出 3,2,1,5,7,
我不知道什麼是錯的事。請不要告訴我使用Gee! 我的問題是排序數組int 謝謝!
的可能重複的[\ [精靈/ VALA \]:如何使用自定義比較排序(http://stackoverflow.com/questions/26572319/genie-vala-how-to-sort-using-a-custom-comparator) – 2014-10-29 11:36:56
你現在基本上提出了相同的問題*三次*。您應該回到第一個問題並對其進行編輯以顯示您的進度或添加更多詳細信息。多次詢問相同的東西並不是要走的路。 – 2014-10-29 11:38:36