C++ named requirements: Destructible
From cppreference.net
C++
C++ named requirements
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
해당 타입의 인스턴스가 소멸될 수 있음을 지정합니다.
요구사항
타입
T
가 다음 조건을 만족하면
Destructible
을 만족합니다
주어진
-
u,T타입의 표현식.
다음 표현식들은 유효해야 하며 지정된 효과를 가져야 합니다.
| Expression | Post-conditions |
|---|---|
| u.~T ( ) |
u
가 소유한 모든 리소스가 회수되며, 예외가 발생하지 않습니다.
|
참고 사항
소멸자는 객체 수명이 끝날 때, 예를 들어 object lifetime 이 종료되거나 scope 를 벗어날 때, 또는 delete-expression 에 의해 암묵적으로 호출됩니다. 타입 요구사항 표에 표시된 명시적 소멸자 호출은 드뭅니다.
의사 소멸자 호출 덕분에, 모든 스칼라 타입은 Destructible 요구 사항을 충족하지만, 배열 타입과 참조 타입은 그렇지 않습니다. 주의할 점은 std::is_destructible 은 배열과 참조 타입을 허용한다는 것입니다.
참고 항목
|
(C++11)
(C++11)
(C++11)
|
타입이 삭제되지 않은 소멸자를 가지고 있는지 확인합니다
(클래스 템플릿) |
|
(C++20)
|
해당 타입의 객체가 파괴될 수 있음을 명시합니다
(컨셉) |