Sdílet prostřednictvím


CMemFile::Attach

Volání této funkce můžete připojit blok paměti CMemFile .

void Attach(
   BYTE* lpBuffer,
   UINT nBufferSize,
   UINT nGrowBytes = 0 
);

Parametry

  • lpBuffer
    Ukazatel do vyrovnávací paměti musí být přiložen k CMemFile .

  • nBufferSize
    Celé číslo, které určuje velikost vyrovnávací paměti v bajtech.

  • nGrowBytes
    Přírůstek přidělení paměti v bajtech.

Poznámky

To způsobí, že CMemFile blok paměti použít jako soubor paměti.

Pokud nGrowBytes 0, CMemFile délka souboru bude nastavena na nBufferSize .To znamená, že data v bloku paměti před bylo připojeno k CMemFile bude použit jako soubor.Paměti soubory vytvořené tímto způsobem nemohou být pěstovány.

Soubor nemůže být pěstovány, dejte pozor, abyste způsobit CMemFile k pokusu o růst souboru.Například volání není CMemFile přepíše z CFile:Write k zápisu za konec nebo nemůžete volat CFile:SetLength s délkou delší než nBufferSize .

Pokud nGrowBytes je větší než 0, CMemFile bude ignorovat obsah bloku paměti jste připojen.Zapsat obsah souboru paměti z pomocné pomocí budete mít CMemFile přepsat z CFile::Write .Pokud se pokusíte zapsat za koncem souboru nebo soubor růst voláním CMemFile přepsat z CFile::SetLength , CMemFile narůstat přidělení paměti v krocích, nGrowBytes .Pěstování přidělení paměti se nezdaří, pokud blok paměti předat do Attach nebyla přidělena kompatibilní s metodou Alloc.Kompatibilní s implementací výchozí Alloc , musíte přidělit paměť s funkcí knihovna run-time malloc nebo calloc.

Požadavky

Záhlaví: afx.h

Viz také

Referenční dokumentace

Třída CMemFile

Diagram hierarchie

CMemFile::CMemFile

CMemFile::Detach

CMemFile::Alloc

CFile::Write

CFile::SetLength