Вопросы по теме 'std-variant'

получить текущий идентификатор типа std::variant (например, boost::variant type())
Я перешел с boost::variant на std::variant и попал в затруднительное положение. Я использовал удобную функцию в boost 'type()', которая позволяет вам получить текущий идентификатор типа. См....
1726 просмотров
schedule 27.06.2023

Список предопределенных типов передается в std::variant
Есть ли способ создать список предопределенных типов и использовать эти типы в std::variant в С++ 17? Вот что я пытаюсь сделать, он компилируется, но не работает, как я надеялся: template < class ... Types > struct type_list {}; using...
981 просмотров
schedule 07.04.2023

Есть ли boost::visit, как std::visit, для boost::variant?
В C++14 я использую boost::variant как способ полиморфизма времени компиляции: using MyType = boost::variant<A, B>; Оба класса имеют метод sayHello() . Я хотел бы позвонить: MyType obj = ...; // either A() or B()...
822 просмотров
schedule 11.08.2022

Как я могу передать текущий альтернативный тип std::variant вызываемому объекту?
Я вызываю некоторые определяемые пользователем вызываемые объекты с аргументами, определенными во время выполнения. У меня работает следующее: using argument_t = std::variant< int, bool, double, std::string >; using argument_list =...
116 просмотров
schedule 01.04.2024

безопасно ли передавать std :: variant по сети, кросс-платформенный
std :: option - это замена union. Но объединение может безопасно проходить по сети и получать на другой платформе (другом компиляторе или арке). Может ли std :: option это сделать? Например, у меня есть две машины A и B. A - это windows, MSVC...
130 просмотров
schedule 04.05.2022

вектор типов std::variant в std::tuple
Я работаю над вектором типов std::variant. Есть ли способ преобразовать его в std::tuple значений, содержащихся в данных std::variants ? typedef std::variant<type1, type2,...> a_union; std::vector<a_union> vec; Например, я хотел бы...
183 просмотров
schedule 07.10.2023