Я пытаюсь использовать функтор с определяемым состоянием как хешер для неупорядоченного_set, проблема, с которой я столкнулся, - это я не знаю, как инициализировать функтор, переданный как параметр шаблона. Это было бы так.Использование функтора с определяемым состоянием как неупорядоченная хэш-функция
class A{
private:
class Hasher{
private:
int a;
public:
Hasher(int val=3):a(val){};
size_t operator()(const string & s) const{
return s[0]*a;
}
};
unordered_set<string,Hasher??> us;
int hasher_val;
public:
A(int h_val):hasher_val(h_val){};
}
Проблема в том, как определить «a» для значения, отличного от 3?
Согласно http: /stackoverflow.com/a/14182624/3313064, вы можете просто передать 0 или получить кол-во по умолчанию по умолчанию из другого экземпляра. –
Спасибо большое! Это именно то, что я искал, например, @ christian-hackl указал, что документация предполагает, что значение 0 - идеальное значение в размере начального ковша, спасибо тоже. – user3325504