Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tato třída představuje rozhraní správce CStringT paměti.
Syntaxe
__interface IAtlStringMgr
Členové
Metody
| Název | Popis |
|---|---|
| Přidělit | Voláním této metody přidělte novou řetězcovou datovou strukturu. |
| Klonování | Voláním této metody vrátíte ukazatel na nového správce řetězců pro použití s jinou instancí CSimpleStringT. |
| Zadejte možnost pro bezplatnou SKU. | Voláním této metody uvolníte řetězcovou datovou strukturu. |
| GetNilString | Vrátí ukazatel na CStringData objekt používaný prázdnými řetězcovými objekty. |
| Přerozdělit | Voláním této metody lze relokovat řetězcovou datovou strukturu. |
Poznámky
Toto rozhraní spravuje paměť používanou třídami řetězců nezávislých na mfc; například CSimpleStringT, CStringT a CFixedStringT.
Tuto třídu můžete také použít k implementaci vlastního správce paměti pro vaši vlastní třídu řetězců. Další informace naleznete v tématu Správa paměti a CStringT.
Požadavky
Hlavička: atlsimpstr.h
IAtlStringMgr::Přidělení
Přidělí novou datovou strukturu řetězců.
CStringData* Allocate(int nAllocLength,int nCharSize) throw();
Parametry
nAllocLength
Početznakůch
nCharSize
Velikost (v bajtech) typu znaku používaného správcem řetězců.
Návratová hodnota
Vrátí ukazatel na nově přidělený blok paměti.
Poznámka:
Nepřidávejte selhání přidělení vyvoláním výjimky. Místo toho by mělo být neúspěšné přidělení signalizovat vrácením hodnoty NULL.
Poznámky
Volání IAtlStringMgr::Free nebo IAtlStringMgr::ReAllocate uvolnit paměť přidělenou touto metodou.
Poznámka:
Příklady použití najdete v tématu Správa paměti a CStringT.
IAtlStringMgr::Clone
Vrátí ukazatel na nového správce řetězců pro použití s jinou instancí CSimpleStringT.
IAtlStringMgr* Clone() throw();
Návratová hodnota
Vrátí kopii objektu IAtlStringMgr .
Poznámky
Běžně se volá podle architektury, když je pro nový řetězec potřeba správce řetězců. Ve většině případů this se vrátí ukazatel.
Pokud však správce paměti nepodporuje použití více instancí CSimpleStringT, je třeba vrátit ukazatel na správce řetězců s možností sharable.
Poznámka:
Příklady použití najdete v tématu Správa paměti a CStringT.
IAtlStringMgr::Free
Uvolní řetězcovou datovou strukturu.
void Free(CStringData* pData) throw();
Parametry
pData
Ukazatel na blok paměti, který se má uvolnit.
Poznámky
Uvolní zadaný blok paměti dříve přidělený přidělením nebo přidělením.
Poznámka:
Příklady použití najdete v tématu Správa paměti a CStringT.
IAtlStringMgr::GetNilString
Vrátí ukazatel na řetězcovou datovou strukturu prázdného řetězce.
CStringData* GetNilString() throw();
Návratová hodnota
Ukazatel na CStringData objekt použitý k reprezentaci prázdného řetězce.
Poznámky
Voláním této funkce vrátíte reprezentaci prázdného řetězce.
Poznámka:
Při implementaci vlastního správce řetězců nesmí tato funkce nikdy selhat. Můžete to zajistit vložením instance CNilStringData do třídy správce řetězců a vrácením ukazatele na tuto instanci.
Poznámka:
Příklady použití najdete v tématu Správa paměti a CStringT.
IAtlStringMgr::Reallocate
Relokuje řetězcovou datovou strukturu.
CStringData* Reallocate(
CStringData* pData,
int nAllocLength,
int nCharSize) throw();
Parametry
pData
Ukazatel na paměť, kterou dříve přidělil tento správce paměti.
nAllocLength
Početznakůch
nCharSize
Velikost (v bajtech) typu znaku používaného správcem řetězců.
Návratová hodnota
Vrátí ukazatel na začátek nově přiděleného bloku paměti.
Poznámky
Voláním této funkce změníte velikost existujícího bloku paměti určeného pData.
Volání IAtlStringMgr::Free uvolnit paměť přidělenou touto metodou.
Poznámka:
Příklady použití najdete v tématu Správa paměti a CStringT.