テンプレート化されたキーである独自のタイプのハッシュを特殊化しようとしていました。
私はそれをcppreferenceに基づいていました。
「C++ 標準はこの型のハッシュを提供していません」というコンパイル エラーが発生します。間違ったことをしただけだと思います。コンパイラはこの種のテンプレートをサポートできますか?
namespace std {
template<typename SType, typename AType, typename PType>
struct MyKey {
const SType from;
const AType consume;
const PType pop;
};
template<typename SType, typename AType, typename PType>
struct hash<MyKey<SType, AType, PType>> {
size_t operator ()(MyKey const &key) {
std::hash<SType>()(key.from);
std::hash<AType>()(key.consume);
std::hash<PType>()(key.pop);
}
};
}