Skip to content

Files

Latest commit

 

History

History
71 lines (50 loc) · 1.29 KB

valid.md

File metadata and controls

71 lines (50 loc) · 1.29 KB

valid

  • future[meta header]
  • std[meta namespace]
  • future[meta class]
  • function[meta id-type]
  • cpp11[meta cpp]
bool valid() const noexcept;

概要

共有状態を持っているか確認する

戻り値

*thisが共有状態を持っていればtrueを返し、そうでなければfalseを返す。

例外

投げない

#include <iostream>
#include <future>

int main()
{
  std::promise<int> p;
  std::future<int> f = p.get_future();

  // 共有状態を持っている
  std::cout << std::boolalpha << f.valid() << std::endl;

  p.set_value(1);

  // この時点でもまだ共有状態を持っている

  f.get(); // 一度値を取り出すと共有状態が破棄される

  std::cout << std::boolalpha << f.valid() << std::endl;
}
  • valid()[color ff0000]
  • std::promise[link /reference/future/promise.md]
  • p.get_future()[link /reference/future/promise/get_future.md]
  • p.set_value[link /reference/future/promise/set_value.md]
  • f.get()[link get.md]

出力

true
false

バージョン

言語

  • C++11

処理系

参照