C++/POD

Материал из Энциклопедия о программировании
Перейти к: навигация, поиск

В C++ POD определяется от противного. Тип данных является POD’ом, если:

  • у него нет конструктора, деструктора и копирующей операции присваивания (то есть operator=, принимающего на входе тот же тип);
  • среди нестатических полей нет ссылок C++, не-POD’ов, private и protected;
  • нет виртуальных методов;
  • он ни от чего не унаследован.

По стандарту C++ простой тип данных устроен в точности так, как описано. Управляемую же структуру компилятор может реорганизовать так, как он сочтёт наиболее эффективным.