最終更新日時:
が更新

履歴 編集

function
<ios>

std::basic_ios::clear

void clear(iostate state = goodbit); // (1) C++98

概要

現在の状態値を消去し、実引数で指定した状態に設定する。

効果

状態値をstateにする。 ただし、rdbuf()がヌルポインタであれば、さらにios_base::badbitをビットORした値にする。

例外

変更後の状態値のビットとexceptions()で設定した値でビットごとのANDを行って非0になれば、ios_base::failure型の例外を送出する。

送出する例外オブジェクトの構築方法は、以下のように規定されている。

実装例

void clear(iostate state = goodbit) {
  iostate newstate = rdbuf() != 0
    ? state
    : state | badbit;

  // 後でrdstate()から読み取れるよう、ここでbasic_iosのメンバ変数にnewstateを書き込む。

  if ((newstate & exceptions()) != 0) {
    throw failure("basic_ios::clear");
  }
}

戻り値

なし

バージョン

言語

  • C++98

参照