C++ именованные требования: PODType
Материал из cppreference.com
Указывает, что тип является POD (Plain Old Data). Это значит, что тип совсестим с типами, используемыми в языке С, что значит, может быть напрямую передан в C библиотеку и получен из нее, в своей двоичной форме.
Примечание: стандарт не определяет именованное требование с таким именем. Это категория типов, определяемая базовым языком. Оно включено здесь как именованное требование только для согласованности.
|
Это требование к типу устарело в текущем стандарте. Все его использования были заменены более совершенными требованиями типа, такими как Тривиальный тип |
Требования
Также:
- скалярный тип;
- класс типа (
classилиstructилиunion), который:
|
(до C++11) |
|
- массив подобного типа.
Отчеты о неисправностях
Следующие изменения поведения были применены с обратной силой к ранее опубликованным стандартам C++:
| Номер | Применён | Поведение в стандарте | Корректное поведение |
|---|---|---|---|
| CWG 148 | C++98 | POD классы не должны содержать указателей на члены, которые являются POD (скалярного) типа |
restriction removed |
| CWG 383 | C++98 | операторы копирования присваиванием или деструкторы должны быть объявлены пользователем в POD классах, если они не определены |
not allowed |
Смотри также
(C++11)(устарело в C++20) |
проверяет, является ли тип типом данных с простой структурой (POD) (шаблон класса) |