Namespaces
Variants

C++ named requirements: Destructible

From cppreference.net
C++ named requirements

해당 타입의 인스턴스가 소멸될 수 있음을 지정합니다.

요구사항

타입 T 가 다음 조건을 만족하면 Destructible 을 만족합니다

주어진

  • u , T 타입의 표현식.

다음 표현식들은 유효해야 하며 지정된 효과를 가져야 합니다.

Expression Post-conditions
u.~T ( ) u 가 소유한 모든 리소스가 회수되며, 예외가 발생하지 않습니다.

참고 사항

소멸자는 객체 수명이 끝날 때, 예를 들어 object lifetime 이 종료되거나 scope 를 벗어날 때, 또는 delete-expression 에 의해 암묵적으로 호출됩니다. 타입 요구사항 표에 표시된 명시적 소멸자 호출은 드뭅니다.

의사 소멸자 호출 덕분에, 모든 스칼라 타입은 Destructible 요구 사항을 충족하지만, 배열 타입과 참조 타입은 그렇지 않습니다. 주의할 점은 std::is_destructible 은 배열과 참조 타입을 허용한다는 것입니다.

참고 항목

타입이 삭제되지 않은 소멸자를 가지고 있는지 확인합니다
(클래스 템플릿)
해당 타입의 객체가 파괴될 수 있음을 명시합니다
(컨셉)