私のC++プログラムは、多くのファイルポインターを使用し、多くのreturnステートメントを持っています。
開いているすべてのファイルポインタを閉じずにreturnステートメントに到達しないようにするために、returnステートメントに到達すると、すべてのオブジェクトのデストラクタが自動的に呼び出されることが保証されているという前提に基づいて、このクラスを作成しました。
私の仮定は本当ですか?
そして、それは良いコードですか?
File_pointer.cppのコンストラクタとデストラクタ
File_pointer::File_pointer(string filename)
{
fptr.open(filename.c_str());
};
File_pointer::~File_pointer()
{
fptr.close();
};
実装例
int main ()
{
File_pointer myfile("myfile.txt");
int x = 2;
switch(x)
{
case 1: return x;
case 2: return x;
default:
break;
};
return 0;
}