Вычислить контрольную сумму строки
Здравствуйте я хочу вычислить контрольную сумму строки например std::string name = "victor"; в гугле я нашел реализации на алгоритмах crc, md5 а так-же множество разных вариантов, но все они использовались для файлов или таблиц, а как лучше будет вычислить контрольную сумму для строк?
Ответы (1 шт):
Автор решения: Alexey Nikolaev
→ Ссылка
В C++11 в стандартную библиотеку добавили алгоритмы расчета hash, с помощью которой вы можете рассчитывать контрольную сумму:
// hash example
#include <iostream>
#include <functional>
#include <string>
int main ()
{
std::string str1 ("Test");
std::string str2 ("Test");
std::hash<std::string> str_hash;
std::cout << "same hashes:\n" << std::boolalpha;
std::cout << "str1 and str2: " << (str_hash(str1)==str_hash(str2)) << '\n';
return 0;
}