Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      std::optional<T>::~optional

      From cppreference.com
      <cpp‎ |utility‎ |optional
       
       
      Utilities library
       
       
      ~optional();
      (since C++17)
      (constexpr since C++20)

      If the object contains a value and the typeT is not trivially destructible (seestd::is_trivially_destructible), destroys the contained value by calling its destructor, as if byvalue().T::~T().

      Otherwise, does nothing.

      [edit]Notes

      IfT is trivially-destructible, then this destructor is also trivial, sostd::optional<T> is also trivially-destructible.

      Feature-test macroValueStdFeature
      __cpp_lib_optional202106L(C++20)
      (DR20)
      Fullyconstexpr

      [edit]Defect reports

      The following behavior-changing defect reports were applied retroactively to previously published C++ standards.

      DRApplied toBehavior as publishedCorrect behavior
      P2231R1C++20the destructor was notconstexpr while non-trivial destructors can beconstexpr in C++20madeconstexpr
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/utility/optional/%7Eoptional&oldid=172853"

      [8]ページ先頭

      ©2009-2025 Movatter.jp