void CMemFile::Write(const void* lpBuf, UINT nCount)
{
ASSERT_VALID(this); if (nCount == 0)
return; ASSERT(lpBuf != NULL);
ASSERT(AfxIsValidAddress(lpBuf, nCount, FALSE)); if (m_nPosition + nCount > m_nBufferSize)
GrowFile(m_nPosition + nCount);          //CMemFile会自动增长 ASSERT(m_nPosition + nCount <= m_nBufferSize); Memcpy((BYTE*)m_lpBuffer + m_nPosition, (BYTE*)lpBuf, nCount); m_nPosition += nCount; if (m_nPosition > m_nFileSize)
m_nFileSize = m_nPosition; ASSERT_VALID(this);
}CMemFile会自动增长
所以你可以在你认为合适的时候写盘 例如以一定时间间隔