最終更新日時:
が更新

履歴 編集

function
<random>

std::operator>>(C++11)

namespace std {
  template <class CharT, class Traits,
            class UIntType, UIntType a, UIntType c, UIntType m>
  basic_istream<CharT, Traits>& operator>>(
    basic_istream<CharT, Traits>& os
    linear_congruential_engine<UIntType, a, c, m>& x);
}

概要

ストリームからの入力を行う。

効果

isに対してフォーマットフラグios_base::decを設定する。
フォーマットを設定したisから、linear_congruential_engineの状態シーケンスを読み取り、オブジェクトxに格納する。
不正な入力だった場合、is.setstate(ios::failbit)を呼び出し、ストリームを失敗状態にする。

事後条件

isのフォーマットフラグが、この関数を呼び出す前の状態に戻ること。

戻り値

is

#include <iostream>
#include <sstream>
#include <cassert>
#include <random>

int main()
{
  std::stringstream ss;

  // ストリームへ出力
  {
    std::minstd_rand engine;
    ss << engine;
  }

  // 出力結果を確認
  std::cout << ss.str() << std::endl;

  // 出力したストリームから読み込む
  {
    std::minstd_rand engine;
    ss >> engine;

    assert(ss);
  }
}

出力例

1

バージョン

言語

  • C++11

処理系

参照