CFile::Abort
更新 : 2007 年 11 月
オブジェクトに関連付けられたファイルを閉じ、ファイルを読み書きできないようにします。
virtual void Abort( );
解説
オブジェクトを破棄する前にファイルが閉じていない場合、デストラクタがファイルを閉じます。
例外を処理するときは、CFile::Abort は 2 つの重要な点で CFile::Close と異なります。まず、Abort 関数はエラーを無視するため、エラーが発生しても例外をスローしません。2 番目に、Abort 関数は、ファイルが開かれていない場合や、開かれても事前に閉じられてしまった場合は、ASSERT を実行しません。
new を使用してヒープ領域に CFile オブジェクトを割り当てた場合は、ファイルを閉じた後でそのオブジェクトを削除する必要があります。Abort 関数は、m_hFile に CFile::hFileNull を設定します。
使用例
CStdioFile fileTest;
TCHAR* pszFileName = _T("Abort_File.dat");
// do stuff that may cause exceptions
CFileException ex;
if (!fileTest.Open(pszFileName, CFile::modeWrite, &ex))
{
ex.ReportError();
fileTest.Abort(); // close file safely and quietly
}
必要条件
ヘッダー : afx.h