看板 Programming 關於我們 聯絡資訊
※ 引述《sorryChen (陳揚和)》之銘言: : 感謝學長詳細的解答 : 但我其實想用現成的sort.. : 現成的sort好像需要pass-in comparison function. 而且我希望這個comparison : function 可以輕易抽換 且是根據外部的資訊輕易抽換.. : 比如說我有個array存有每個人的名子, : 然後一個object存有每個人的數學成績 另一個object有國文成績 ....etc : 我想要有個comparison的function pointer : 指到數學成績這個object的member function 比較兩個人的數學成績 for example : 然後也可以指到國文成績這個object..如果要排國文的話... : 我不知道要怎麼寫才能利用外部的資料+comparison function : 和現成的sort..而我覺得這一定有人寫過相同的問題... : 如果用一個interface 要怎麼用呢.. 我沒記錯的話, 現有 Std lib 裡有不少都已 經有提供你所說的 'comparison function', 用來讓沒有提供 < operator 的東西能依一個 外來傳入的 less function 來作比較 (及 sort) 可以去看看 map 怎樣做法. 通常很多情況下都 不是真的餵 function pointer, 而是餵 functor -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 202.155.236.82
sorryChen:感謝 研究當中 128.125.87.33 04/03 14:30