Лекция 3

05.09.2025 Обновлено: 05.09.2025

Лекция 3. Структуры, объединения

Структура (struct)

  • Структура — это одна или несколько переменных (возможно, различных типов), которые для удобства работы с ними сгруппированы под одним именем.
  • В C++ структура практически идентична классу (отличие — модификатор доступа по умолчанию: в structpublic, в classprivate).

Объединение (union)

  • Объединение — это переменная, которая может содержать (в разные моменты времени) объекты различных типов и размеров.
  • Все требования относительно размеров и выравнивания выполняет компилятор.
  • Объединения позволяют хранить разнородные данные в одной и той же области памяти без включения в программу машинно-зависимой информации.
  • Размер объединения равен размеру самого большого его поля.
union Data {
    int i;
    float f;
    char str[4];
};  // sizeof(Data) == 4