0
Книга, которую я читаю создает хэш-таблицу со следующей функциейHash
size_t hash(const std::string &str) {
int count = 16;
size_t hash_value = 0;
const char *cstr = str.c_str();
while(cstr && *cstr && --count)
hash_value += (*cstr++ - 'a') << (count % 4);
return hash_value;
Что делает <<
оператора делать в этом контексте?
[Ответ на диаграмме приоритета оператора.] (Http://en.cppreference.com/w/cpp/language/operator_precedence) – chris
Это [левый оператор бит-сдвига] (http://en.wikipedia.org)./вики/Bitwise_operation # Bit_shifts). 'x << y' is' x * (2^y) 'где'^'представляет мощность, а не XOR. – jedwards