Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      std::optional<T>::operator bool,std::optional<T>::has_value

      From cppreference.com
      <cpp‎ |utility‎ |optional
       
       
      Utilities library
       
       
      constexprexplicit operatorbool()constnoexcept;
      (since C++17)
      constexprbool has_value()constnoexcept;
      (since C++17)

      Checks whether*this contains a value.

      [edit]Return value

      true if*this contains a value,false if*this does not contain a value.

      [edit]Example

      Run this code
      #include <iostream>#include <optional> int main(){std::cout<<std::boolalpha; std::optional<int> opt;std::cout<< opt.has_value()<<'\n';     opt=43;if(opt)std::cout<<"value set to "<< opt.value()<<'\n';elsestd::cout<<"value not set\n";     opt.reset();if(opt.has_value())std::cout<<"value still set to "<< opt.value()<<'\n';elsestd::cout<<"value no longer set\n";}

      Output:

      falsevalue set to 43value no longer set

      [edit]See also

      checks whether the object contains an expected value
      (public member function ofstd::expected<T,E>)[edit]
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/utility/optional/operator_bool&oldid=183380"

      [8]ページ先頭

      ©2009-2025 Movatter.jp