Согласно cppreference std::get
для variant
throws std::bad_variant_access
если тип, содержащийся в variant
, не является ожидаемым. Это означает, что стандартная библиотека должна проверять каждый доступ (libc++).
Каково было обоснование этого решения? Почему это не неопределенное поведение, как и везде в C++? Могу ли я обойти это?