0
私はC++の入門書を読んでいます。 そこには、ファイルを開くためのプログラム例があります。次のようにコードがある基本ファイルC++での処理、EOF検出
...
#include<iostream.h>
#include<fstream.h>
void main()
{
ifstream fin;
fin.open("country");
while(fin)
{
....
.....
}
}
は、ここに私の疑問です。 コードでは、ファイル操作にエラーがある場合(ファイルの終了条件を含む)、finは0に評価されます。この場合、オブジェクトはどのように整数に評価されますか?一部非ゼロ)?
参照:http://en.cppreference.com/w/cpp/io/basic_ios/operator_bool(オーバーロードされた演算子の素晴らしい世界へようこそ) –
エラーまたはステータスは、I/O操作が行われた後にのみ*更新されることに注意してください。つまり、 'fin >>'を使用して値を読み取ると、EOFがトリガーされる可能性があります。 –
また、[ 'と' ]のように 'void main'が間違っていて、[もっと新しい/より良い本](http://stackoverflow.com/q/388242/253056) '(彼らは何年も時代遅れとなっています。それはちょうど' 'と' 'であるべきです)。 –