Я хотел бы хранить boost::gregorian::date
как ключ boost::unordered_map
но я не могу скомпилировать код, так как в нем отсутствует правильная хеш-функция для этого класса.
std::string
и сохранить его. Я, возможно, хотел бы избежать этого решения, так как использование строки довольно дорого.day()
функция, и я не уверен, что это действительно подходит.Есть ли другой лучший способ сохранить дату или дату экспорта функции в виде числа?
Реализуйте хеш-функцию для него:
namespace boost { namespace gregorian {
inline size_t hash_value(date const& date)
{
return boost::hash_value(date.julian_day());
}
} } // boost::gregorian
julian_day
просто индекс дня с начала юлианской эпохи (что бы это ни было).