При объявлении объединения, содержащего ссылки, вылезает ошибка "no appropriate default constructor available"

Рейтинг: 1Ответов: 1Опубликовано: 12.04.2015
struct BeginInfo
{
   int a;
};

struct LoadInfo
{
    FILE* pFile;
};

struct MoveInfo
{
    int a;
};

struct RotateInfo
{
    int a;
};

struct DrawInfo
{
    HDC hDC;
};

struct EndInfo
{
    int a;
};


union CommandInfo
{
    BeginInfo& beginInfo;
    LoadInfo& loadInfo;
    MoveInfo& moveInfo;
    RotateInfo& rotateInfo;
    DrawInfo& drawInfo;
    EndInfo& endInfo;
};

Ответы

▲ 1

Разумеется. Дело в том, что union не может содержать ссылки.

Но судя по сообщению об ошибке, проблема может быть где-то ещё.