Cpp-standard-library-cpp-ios-good
提供:Dev Guides
C ++ IOSライブラリ-良い
説明
ストリームの状態が良好かどうかを確認するために使用されます。
宣言
- 以下は、ios
- good()関数の宣言です。
bool good() const;
パラメーター
none
戻り値
ストリームの状態フラグがどれも設定されていない場合はtrue。
ストリームの状態フラグのいずれかが設定されている場合(badbit、eofbit、またはfailbit)はfalse。
例外
強力な保証-例外がスローされた場合、ストリームに変更はありません。
データの競合
ストリームオブジェクトにアクセスします。
同じストリームオブジェクトへの同時アクセスは、データの競合を引き起こす可能性があります。
例
- 以下の例では、ios
- good()について説明しています。
#include <iostream>
#include <sstream>
void print_state (const std::ios& stream) {
std::cout << " good()=" << stream.good();
std::cout << " eof()=" << stream.eof();
std::cout << " fail()=" << stream.fail();
std::cout << " bad()=" << stream.bad();
}
int main () {
std::stringstream stream;
stream.clear (stream.goodbit);
std::cout << "goodbit:"; print_state(stream); std::cout << '\n';
stream.clear (stream.eofbit);
std::cout << " eofbit:"; print_state(stream); std::cout << '\n';
stream.clear (stream.failbit);
std::cout << "failbit:"; print_state(stream); std::cout << '\n';
stream.clear (stream.badbit);
std::cout << " badbit:"; print_state(stream); std::cout << '\n';
return 0;
}
上記のプログラムをコンパイルして実行すると、次の結果が生成されます-
goodbit: good()=1 eof()=0 fail()=0 bad()=0
eofbit: good()=0 eof()=1 fail()=0 bad()=0
failbit: good()=0 eof()=0 fail()=1 bad()=0
badbit: good()=0 eof()=0 fail()=1 bad()=1