」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何在無序集合中為元組實現通用哈希功能?

如何在無序集合中為元組實現通用哈希功能?

發佈於2025-03-26
瀏覽:785

How to Implement a Generic Hash Function for Tuples in Unordered Collections? 
在未訂購的集合中的元素

要糾正此問題,一種方法是手動為特定元組類型定義哈希函數,例如:

template template template 。 struct std :: hash > { size_t operator()(std :: tuple const&tuple)const {...} }; 當此方法起作用時,可以為使用的每種元組類型定義哈希功能。為了自動化這一點,可以實現一個通用哈希函數,如下所示:此函數利用參數依賴的名稱查找(ADL)允許編譯器自動根據元組類型選擇正確的哈希實現。

標準proformant solution

名稱空間my_hash { //向std :: hash轉發非核心類型 模板 struct hash {...}; //為元組提供優化的哈希 模板 struct hash > {...}; }

最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3