[過去ログ] C++相談室 part165 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
100(1): デフォルトの名無しさん (ワッチョイ de63-J7+h) [sage] 2023/12/30(土) 05:42:41.89 ID:3ksfrMrT0(1/3) AAS
>>99>int x, y;
>cin >> x >> y;
おk
スマンカッタorz
エラーとEOFのどちらかを検知したかったら!cin.good()が正しいっぽい?
外部リンク:blog.emattsan.org
ここまでは分かった気がするが、
ストリーム入力演算子std::istream& operator>>(std::istream& os, Foo& obj)の中で入力に失敗した場合
どうやってエラーを呼び出し元に通知したらええんじゃ……
102: はちみつ餃子◆8X2XSCHEME (ワッチョイ 43c3-KM86) [sage] 2023/12/30(土) 08:47:16.28 ID:XV37Te4m0(1) AAS
>>100
ストリームのフラグを立てるメンバ関数は setstate だけど
>>101101(1): デフォルトの名無しさん (ワッチョイ de63-J7+h) [sage] 2023/12/30(土) 05:50:37.02 ID:3ksfrMrT0(2/3) AAS
クラスFooの入力ストリーム演算子の中で整数を2個読むとして、
std::istream& operator>>(std::istream& os, Foo& obj) {
int x, y;
os >> x >> y;
if (!os.goot()) {
return os; // エラー発生時は単純にreturn os; でおk?
}
obj.m_x = x;
obj.m_y = y;
return os;
}
の状況ならフラグはもう立ってるから戻るだけで問題ないよ。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.038s