Распределение между членами профсоюзаC++

Программы на C++. Форум разработчиков
Anonymous
Распределение между членами профсоюза

Сообщение Anonymous »

Четко ли определен этот код?

Код: Выделить всё

int main()
{
union
{
int i;
float f;
} u;

u.f = 5.0;
u.i = u.f;       // ?????
}
Он обращается к двум разным членам союза в одном выражении, поэтому мне интересно, не противоречит ли он положениям [class.union]/1 о активном члене союза.

Стандарт C++, похоже, недостаточно определяет, какие операции изменяют активный член для встроенных типов и что происходит, если неактивный член читается или записывается.

Стандарт C++, похоже, недостаточно определяет, какие операции изменяют активный член для встроенных типов и что происходит, если неактивный член читается или записывается.

>

Подробнее здесь: https://stackoverflow.com/questions/318 ... on-members

Вернуться в «C++»