C++でファイルIOを実行するために、ofstream、ifstream、およびfstreamクラスを使用します。C++ファイルストリームのオープンモードのあいまいさ
- ofstreamの:Streamクラスファイル
- はifstreamに書き込むために:読み取りとファイル
へ/から書き込むために、両方のStreamクラス:ファイルから
ios::out
とios:in
モードに関連しています。 私はofstream
オブジェクトを作成し、ios::in
モードでファイルを開くと、私は、ファイルに 書き込むことができていますが、その既に作成する場合にのみ(それはまだ存在していない場合ios::out
モードファイルでも作成されます)。
しかし、ifstream
オブジェクトを作成し、ios::out
モードでファイルを開くと、ファイルから読み込むことができます。
私の質問は、なぜこれらのモード(ios::in
/ios::out
)は、ストリームのタイプ(ifstream
/ofstream
)自体は、操作の種類(入力/出力)が行われているのように指定した場合、言語によって提供されているのですか?
このあいまいな使い方(ios::out
とios::in
とofstream
とifstream
)が1の場合で動作し、他に(ファイルが既に存在していない場合にのみですが)失敗した。また、なぜ?