Можно ли использовать тип С++ 11 std::hash
для указателей на хэш-функцию? Существует частичная специализация hash
, определенная как
template <typename T> struct hash<T*>;
но поскольку указатели функций отличаются от других типов указателей в С++ (например, они не могут быть добавлены к void*
), я не уверен, можно ли использовать его для таких типов, как int(*)()
или void(*)(int, int)
.
Разрешено ли это? Есть ли какая-либо конкретная формулировка в новой спецификации ISO, которая поддерживает или опровергает это?
Спасибо!