<i id='Bj6In'><tr id='Bj6In'><dt id='Bj6In'><q id='Bj6In'><span id='Bj6In'><b id='Bj6In'><form id='Bj6In'><ins id='Bj6In'></ins><ul id='Bj6In'></ul><sub id='Bj6In'></sub></form><legend id='Bj6In'></legend><bdo id='Bj6In'><pre id='Bj6In'><center id='Bj6In'></center></pre></bdo></b><th id='Bj6In'></th></span></q></dt></tr></i><div id='Bj6In'><tfoot id='Bj6In'></tfoot><dl id='Bj6In'><fieldset id='Bj6In'></fieldset></dl></div>
  1. <legend id='Bj6In'><style id='Bj6In'><dir id='Bj6In'><q id='Bj6In'></q></dir></style></legend>
  2. <tfoot id='Bj6In'></tfoot>
    1. <small id='Bj6In'></small><noframes id='Bj6In'>

        <bdo id='Bj6In'></bdo><ul id='Bj6In'></ul>
    2. 如何在 C++0x 中组合哈希值?

      How do I combine hash values in C++0x?(如何在 C++0x 中组合哈希值?)
    3. <small id='UlO42'></small><noframes id='UlO42'>

      <legend id='UlO42'><style id='UlO42'><dir id='UlO42'><q id='UlO42'></q></dir></style></legend>
      • <bdo id='UlO42'></bdo><ul id='UlO42'></ul>
          <tbody id='UlO42'></tbody>

              <i id='UlO42'><tr id='UlO42'><dt id='UlO42'><q id='UlO42'><span id='UlO42'><b id='UlO42'><form id='UlO42'><ins id='UlO42'></ins><ul id='UlO42'></ul><sub id='UlO42'></sub></form><legend id='UlO42'></legend><bdo id='UlO42'><pre id='UlO42'><center id='UlO42'></center></pre></bdo></b><th id='UlO42'></th></span></q></dt></tr></i><div id='UlO42'><tfoot id='UlO42'></tfoot><dl id='UlO42'><fieldset id='UlO42'></fieldset></dl></div>

              • <tfoot id='UlO42'></tfoot>
                本文介绍了如何在 C++0x 中组合哈希值?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                问题描述

                C++0x 添加了 hash<...>(...).

                C++0x adds hash<...>(...).

                我找不到 hash_combine 函数,如 提升.实现这样的事情的最干净的方法是什么?也许,使用 C++0x xor_combine?

                I could not find a hash_combine function though, as presented in boost. What is the cleanest way to implement something like this? Perhaps, using C++0x xor_combine?

                推荐答案

                好吧,就像 boost 人员那样做:

                Well, just do it like the boost guys did it:

                template <class T>
                inline void hash_combine(std::size_t& seed, const T& v)
                {
                    std::hash<T> hasher;
                    seed ^= hasher(v) + 0x9e3779b9 + (seed<<6) + (seed>>2);
                }
                

                这篇关于如何在 C++0x 中组合哈希值?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

                相关文档推荐

                Unable to access non-const member functions of objects in C++ std::set(无法访问 C++ std::set 中对象的非常量成员函数)
                Constructing std::function argument from lambda(从 lambda 构造 std::function 参数)
                STL BigInt class implementation(STL BigInt 类实现)
                Sync is unreliable using std::atomic and std::condition_variable(使用 std::atomic 和 std::condition_variable 同步不可靠)
                Move list element to the end in STL(在 STL 中将列表元素移动到末尾)
                Why is overloading operatoramp;() prohibited for classes stored in STL containers?(为什么禁止对存储在 STL 容器中的类重载 operatoramp;()?)
                    • <bdo id='xFArR'></bdo><ul id='xFArR'></ul>
                      <legend id='xFArR'><style id='xFArR'><dir id='xFArR'><q id='xFArR'></q></dir></style></legend>
                    • <tfoot id='xFArR'></tfoot>

                          <tbody id='xFArR'></tbody>
                        <i id='xFArR'><tr id='xFArR'><dt id='xFArR'><q id='xFArR'><span id='xFArR'><b id='xFArR'><form id='xFArR'><ins id='xFArR'></ins><ul id='xFArR'></ul><sub id='xFArR'></sub></form><legend id='xFArR'></legend><bdo id='xFArR'><pre id='xFArR'><center id='xFArR'></center></pre></bdo></b><th id='xFArR'></th></span></q></dt></tr></i><div id='xFArR'><tfoot id='xFArR'></tfoot><dl id='xFArR'><fieldset id='xFArR'></fieldset></dl></div>

                        <small id='xFArR'></small><noframes id='xFArR'>