最終更新日時(UTC):
が更新

履歴 編集

function template
<random>

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

namespace std {
  template <class CharT, class Traits,
            class Engine, size_t K>
  std::basic_istream<CharT, Traits>& operator>>(
    std::basic_istream<CharT, Traits>& os
    shuffle_order_engine<Engine, K>& x);
}

概要

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

効果

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

事後条件

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

戻り値

is

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

int main()
{
  std::stringstream ss;

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

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

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

    assert(ss);
  }
}

出力例

1465645203 16807 282475249 1622650073 984943658 1144108930 470211272 101027544 1457850878 1458777923 2007237709 823564440 1115438165 1784484492 74243042 114807987 1137522503 1441282327 16531729 823378840 143542612 896544303 1474833169 1264817709 1998097157 1817129560 1131570933 197493099 1404280278 893351816 1505795335 1954899097 1636807826 563613512 101929267 1580723810 704877633 1358580979 1624379149 2128236579 784558821 530511967 2110010672 1551901393 1617819336 1399125485 156091745 1356425228 1899894091 585640194 937186357 1646035001 1025921153 510616708 590357944 771515668 357571490 1044788124 1927702196 1952509530 130060903 1942727722 1083454666 1108728549 685118024 2118797801 1060806853 571540977 194847408 2035308228 158374933 1075260298 824938981 595028635 1962408013 1137623865 997389814 2020739063 107554536 1635339425 1654001669 1777724115 269220094 34075629 1478446501 1864546517 1351934195 1581030105 1557810404 2146319451 1908194298 500782188 657821123 753799505 1102246882 1269406752 1816731566 884936716 1807130337 578354438 892053144 1153851501 1004844897 616783871 382955828 330111137 1227619358 1723153177 70982397 1147722294 1070477904 2051621609 1606946231 1190959745 1912844175 1341853635 1808266298 343098142 456880399 1534827968 280090412 195400260 589673557 6441594 889688008 57716395 1524325968 2014119113 515204530 388471006 681910962 1904797942 1400285365 322842082 1463179852 828530767 832633821 1073185695 316824712 1260973671 1815859901 1267248590 2051724831 1194314738 318153057 2111631616 877819790 304555640 1213110679 541437335 1049077006 996497972 2063936098 270649095 428975319 685583454 1351345223 272112289 1398556760 1334948905 1724586126 532236123 1023129506 836045813 436476770 60935238 1936329094 915896220 304987844 2034712366 881140534 281725226 1901915394 197941363 348318738 152607844 784559590 543436550 290145159 1681808623 977764947 750597385 971307217 1737195272 2000755539 1399399247 462242385 1459413496 1951894885 537140623 1848682420 1012028144 1086531968 1289335735 1755699915 1623161625 992663534 2043046042 1358796011 943454679 1771024152 1479575244 1507977295 2119878818 2049590396 1828087692 621301815 1154112991 1104740033 222122669 889119397 1238489553 1882410547 944975825 1567121210 1866729662 1536830211 1719533808 1517273377 1592822761 41000625 1902737335 1127401868 994977995 140002776 1532062767 1049997439 1433829874 1464689331 428540556 1968456301 1859468872 1911300560 1168120094 298918984 967113755 2124639789 462851407 957828015 678030193 1105222769 1893015680 944303455 1004016855 1732267506 784170963 454233502 2145586676 329863108 1353963249 1323602331 1277844 1887638 1660760808 1561939997 685428651 897054849 1465645203

バージョン

言語

  • C++11

処理系

参照