例:
//ヘッダーファイル
class Example
{
private:
fstream InputObject;
public:
Example();
}
//実装ファイル
Example::Example():InputObject("file_name.txt", ios::in) {}
同様の質問からこれまで読んだことから、C++の「古い」バージョンでクラス内のfstreamオブジェクトを初期化する唯一の方法は、上記のメンバーリストの初期化を介して行うことです。
質問:
それが本当にクラス内の fstream オブジェクトを初期化する「唯一の」方法である場合、ファイルが開かない場合はどうすればよいですか?
通常、fstream オブジェクトをチェックして正しく開くことを確認しますが、この場合は不可能のようです。また、できたとしても、最初に失敗した場合、どうすればオブジェクトを再初期化できますか?