C++相談室 part166 (569レス)
上下前次1-新
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん
324(1): デフォルトの名無しさん (ワッチョイ 5e0b-AFj/) [sage] 2025/06/17(火) 11:45:37.82 ID:TpERKz9s0(1) AAS
>>321321(3): デフォルトの名無しさん (ワッチョイ b1d6-xkro) [sage] 2025/06/17(火) 11:13:00.43 ID:4NySVCEQ0(1/2) AAS
ファイナルをクローズした時にエラーとなるのですが、これは正しいのでしょうか。
やはり、クローズはデストラクタに任せた方がいいのでしょうか。
#include <iostream>
#include <fstream>
int main() {
constexpr auto path = "tmp.txt";//なんでもいいです
std::ifstream ifs(path);
if(ifs.fail()){
std::cerr << "File open error: " << path << std::endl;
return -1;
}
std::string buf;
while(std::getline(ifs, buf))
std::cout << buf << std::endl;
ifs.close(); //←これ
if(ifs.fail()){
std::cerr << "File close error: " << path << std::endl;
return -1;
}
return 0;
}
close()したからではなくwhile(std::getline(ifs, buf))でeofになるまで読んだからfailになってる
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 1.207s*