6

重複の可能性:
C++ コードのコンパイル中に ios::nocreate エラーが発生する

私は C++/C# で単純な字句コンパイラを作成する方法に取り組んできましたが、プログラムをコンパイルしようとするとエラーが発生するようです。

error c2065 'nocreate' undeclared identifier 

どうすればこの問題を処理できますか??しかし、おそらくそれは fstream ヘッダーに関係しているのではないかと考えています。

これは私にエラーを与えているコードです

loadTransitionTable( );

    fstream File("input.txt", ios::in|ios::Nocreate);

    if (!File)
    {
       cout<<"\n Unable to open the input file."<<endl;
       cout<<"\n Press any key to exit.";

       getch( );
       exit(0);
4

3 に答える 3

12

ios::Nocreateは標準 C++ の一部ではありませんが、ファイルがまだ存在しない場合にファイルが作成されないようにすることを意図している場合は、リラックスできます。とにかく、これはifstreamsのデフォルトであるため、次のように言うことができます:

fstream File("input.txt", ios::in);
于 2012-11-13T10:17:40.443 に答える
3

VisualStudioを使用している場合は、

std::fstream File("input.txt", std::ios::in|std::ios::_Nocreate);
于 2012-11-13T10:19:57.267 に答える
3

標準の C++ ライブラリは を定義していませんstd::ios::Nocreate。読み取り用に開かれたファイルはいずれにしても作成されないため、省略できます。

fstream File("input.txt", ios::in);

または単に使用します:

ifstream File("input.txt");

于 2012-11-13T10:19:17.620 に答える