Извлечение типов, удерживаемых профсоюзом - PullRequest
0 голосов
/ 13 апреля 2019

Давайте рассмотрим такой объединенный дискриминируемый союз:

struct DiscriminatedUnion
{
    union
    {
        float floatish;
        uint32_t integral;
    };
    enum Discriminator
    {
        FLOATISH,
        INTEGRAL
    } discriminator{FLOATISH};
};

Есть ли возможность каким-либо образом получить типы (например, с std::tuple<float,uint32_t>) такого дискриминационного объединения?Я хотел бы реализовать sth вроде std::visit для подобных союзов, не заменяя их на std::variant или не объявляя черты для каждого союза.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...