Spec-Zone.ru › C++

C++ назначаемые требования: Destructible

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

Требования

Тип T удовлетворяет Destructible, если

Дано

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

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

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

Примечания

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

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

См. также

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

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/named_req/Destructible

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API