Namespaces
Variants

C++ named requirements: Destructible

From cppreference.net
C++ named requirements

Указывает, что экземпляр типа может быть разрушен.

Требования

Тип T удовлетворяет требованиям Destructible если

Дано

  • u , выражение типа T .

Следующие выражения должны быть корректными и иметь указанные эффекты.

Expression Post-conditions
u.~T ( ) Все ресурсы, принадлежащие u , освобождаются, исключения не генерируются.

Примечания

Деструкторы вызываются неявно в конце времени жизни объекта , например, при выходе из области видимости или с помощью delete-expression . Явный вызов деструктора, как показано в таблице требований к типам, встречается редко.

Благодаря вызову псевдодеструктора , все скалярные типы удовлетворяют требованию Destructible , тогда как массивы и ссылочные типы — нет. Заметьте, что std::is_destructible допускает массивы и ссылочные типы.

Смотрите также

проверяет, имеет ли тип неудалённый деструктор
(шаблон класса)
указывает, что объект типа может быть уничтожен
(концепт)