そうだろうと思ったのですが、標準ライブラリの実装 (gcc-4.8.2) でこれを見つけることができません。
なぜstd::hash
まだ専門化されていないのstd::reference_wrapper
ですか?
#pragma once
#include <functional>
namespace std
{
template<typename T>
struct hash<reference_wrapper<T>>
{
size_t operator()(const reference_wrapper<T>& r) const
{
return std::hash<T>()(r.get());
}
};
}