Что вы можете иметь в объявлении класса 1, чего вы никогда не встретите в объявлении объединения? - PullRequest
4 голосов
/ 01 февраля 2011

Я видел этот вопрос интервью онлайн. К сожалению, я не могу понять такую ​​вещь ... функции, конструктор, деструкторы

Кстати, я думаю, что структура и класс в C ++ почти одинаковы, за исключением того, что члены класса являются закрытыми по умолчанию, тогда как члены структуры являются открытыми по умолчанию. Наследование между классами также является закрытым по умолчанию, а наследование между структурами является открытым по умолчанию.

И объединение отличается от структуры, потому что все члены находятся в одном месте.

спасибо

1 Ответ

6 голосов
/ 01 февраля 2011

Объединение не может иметь базовые классы.

Объединение также не может иметь никаких элементов данных с нетривиальными специальными функциями-членами, функциями виртуальных элементов, статическими элементами или элементами справочных данных, но они будут отображаться в определениисоюза.Объединение нельзя использовать в качестве базового класса, но это применимо только к объявлениям других классов, но не к объявлению самого объединения.

...