Почему std::any_cast std::bad_any_cast исключение std::bad_any_cast когда возможно неявное преобразование из фактического сохраненного типа в запрашиваемый тип?
Например:
std::any a = 10; // holds an int now
auto b = std::any_cast<long>(a); // throws bad_any_cast exception
Почему это не разрешено и есть ли способ обхода, чтобы разрешить неявное преобразование (если неизвестен точный тип std::any hold)?