ОД
Олеся Данилова

C++ классы и структуры

В чём разница между ними, кроме того, что в классах по умолчанию всё закрыто, а в структурах открыто?

Алексей Парамонов
Алексей Парамонов

Структуры имеют обратную совместимость с Си.

ЕР
Елена Румянцева

Структура содержит только данные, именуемые полями.

В классах это называется свойствами объекта.
Но класс помимо свойств содержит в себе методы (описания или определения функций) и события (описания и обработчики событий) .
Всё это хранится внутри класса как целостная структура, но уже не данных, а структура объекта. На основе описания класса как переменной создаются в памяти объекты. В момент создания объекта (или экземпляра класса) отводится память и на неё создаётся ссылка. Доступ к объекту осуществляется через указатель-переменную, а внутри объекта через внутренние ссылки (указатели или смещения) .

Классы закрыты по умолчанию по той причине, что основные классы в среде разработчика, уже готовы к работе, представляют закрытое пространство имен, такое, которое не мешает использовать любые идентификаторы для других целей. Если программист пожелает, он может сделать отдельные детали доступными, но он знает куда вмешивается и на нём лежит ответственность за содеянное.
Обычно полная структура класса может оставаться программисту неизвестной, а уж если он начинает в неё вмешиваться, то должен изучать.

ЛП
Лилия Павлова

В классах ещё и методы (функции, обрабатывающие переменные класса) инкапсулированны (в общей оболочке) . А так, я ещё мал, что бы такую разницу определить.)

ИА
Илхомжан Абдукахаров

ИМХО больше ни в чем кроме открыто/закрыто разницы в плюсах нет.

А про совместимость с "С" - плюсы считают структуры из Си своими, но структуры из плюсов Си не поймет.

Похожие вопросы
к какому классу принадлежит структура dcb c++ ,какой include над вписать в билдере,??
C# как создать структуру на основе этого простого класса? Интересует самый простой способ!
Вопрос по структурам в C++
c# ошибка при чтении структуры из файла
C++ Как передать структуру в функцию по ссылке?
Чтение структуры из файла C++
C++ Классы, вложенные классы
Помогите дописать Структуру ( Borland C++ )
Помогите написать программу в C++ по структурам
c# обращение к элементу структуры в Листе структур