Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
コンパイルされた .exe と同じディレクトリに単純な txt ファイルを作成するプログラムがあります。
ofstream output("myfile.txt", ios::binary | ios::trunc);
プログラムの最後に、これを削除する必要があります。
remove("myfile.txt");
これらはどちらもうまく機能しますが、ユーザーが予期せず、誤って cmd ウィンドウを閉じたり、プロセスを終了したりした場合は、ファイルを削除してください。
プロセスをクリーンアップする標準的な方法は、関数を に登録することatexitです。
atexit
void clean_myfile { std::remove( "myfile.txt" ); } int main() { std::ofstream output("myfile.txt", std::ios::binary | std::ios::trunc); std::atexit( clean_myfile ); }
これは、プラットフォームの詳細に関係なく、プロセスが正常に終了した場合に実行されます。