Использование std::hash с заменой вариантов на C++14C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Использование std::hash с заменой вариантов на C++14

Сообщение Anonymous »

Я переношу некоторый код с C++17 на C++14. Одна часть кода выглядит так:

Код: Выделить всё

std::size_t operator()(const OpenXLSX::XLCellValue& value) const noexcept
{
return std::hash {}(value.m_value);
}
Поскольку вариант недоступен в C++14, я использую этот вариант реализации в качестве замены. Поэтому я переписал код следующим образом:

Код: Выделить всё

std::size_t operator()(const OpenXLSX::XLCellValue& value) const noexcept
{
return std::hash {}(value.m_value);
}
Однако он не компилируется. Я получаю следующую ошибку:

Код: Выделить всё

error: use of deleted function 'std::hash::hash()'
Есть идеи, как исправить эту строку для C++14?

Подробнее здесь: https://stackoverflow.com/questions/790 ... ent-on-c14
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»