SK
struct SimpleVariant {
union data {
int int_v;
std::string str_v;
double double_v;
};
uint8_t type;
};
#define INT_TYPE 0u
#define STRING_TYPE 1u
#define DOUBLE_TYPE 2u
SimpleVariant variant {};
variant.data.double_v = 10.0;
variant.type = DOUBLE_TYPE;