5

一方、RHEL5.0でC++で記述されたパッケージをコンパイルします。次のエラーが発生します。

>エラー:nocreateのメンバーではありませんstd::ios

ソースコードは以下に対応します:

ifstream tempStr(argv[4]ios::in| ios::nocreate);


私が試してみました

#g ++ -O -Wno-deprecated <file.cpp> -o <file>

と同様:

#g ++ -O-o<ファイル>

解決策を提案してください。

4

3 に答える 3

9

ios::nocreate標準のC++の一部ではありません-何を期待していますか?

編集:Googleからは、ファイルがまだ存在しない場合にファイルが作成されないようにすることを目的としていたようです。これはとにかくifstreamsのデフォルトなので、次のように言うことができます。

ifstream f( filename );
if ( ! f.is_open() ) {
    // open failed - probably because infput file does not exist  
}
于 2009-06-30T10:17:04.747 に答える
7

ファイルを読み取りモード ( ios::in) で開いても、ファイルが存在しない場合は作成されません。非標準のnocreate. そして、inは のデフォルトですifstream:

ifstream tempStr (argv[4]);
于 2009-06-30T10:20:50.027 に答える