Вариант std::variant в C++
Один тип из списка держит std::variant - это объединение с известным списком типов: в памяти всегда занято ровно одно из них, не больше и не меньше.
Компилятор знает допустимые альтернативы, поэтому
доступ к содержимому проверяется типами. Подключите
#include <variant>. Запишем вариант из
целого и строки, положим число и выведем
«метод index»:
#include <variant>
#include <string>
std::variant<int, std::string> cell = 12;
std::cout << cell.index() << "\n";
На экран попадает 0 - активен первый
тип списка, int, а не строка.
Объявите std::variant<int, std::string> item
со строкой "ok" и выведите «метод index».