IAtlStringMgr-Klasse
Diese Klasse stellt die Schnittstelle zu einem CStringT
Speicher-Manager dar.
Syntax
__interface IAtlStringMgr
Member
Methoden
Name | Beschreibung |
---|---|
Zuteilen | Rufen Sie diese Methode auf, um eine neue Zeichenfolgendatenstruktur zuzuweisen. |
Klonen | Rufen Sie diese Methode auf, um einen Zeiger auf einen neuen Zeichenfolgen-Manager für die Verwendung mit einer anderen Instanz von CSimpleStringT . |
Free | Rufen Sie diese Methode auf, um eine Zeichenfolgendatenstruktur frei zu geben. |
GetNilString | Gibt einen Zeiger auf das Objekt zurück, das CStringData von leeren Zeichenfolgenobjekten verwendet wird. |
Neu zuteilen | Rufen Sie diese Methode auf, um eine Zeichenfolgendatenstruktur neu zu verknüpfen. |
Hinweise
Diese Schnittstelle verwaltet den von den MFC-unabhängigen Zeichenfolgenklassen verwendeten Speicher; z . B. CSimpleStringT, CStringT und CFixedStringT.
Sie können diese Klasse auch verwenden, um einen benutzerdefinierten Speicher-Manager für Ihre benutzerdefinierte Zeichenfolgenklasse zu implementieren. Weitere Informationen finden Sie unter Speicherverwaltung und CStringT.
Anforderungen
Kopfzeile: atlsimpstr.h
IAtlStringMgr::Allocate
Weist eine neue Zeichenfolgendatenstruktur zu.
CStringData* Allocate(int nAllocLength,int nCharSize) throw();
Parameter
nAllocLength
Die Anzahl der Zeichen im neuen Speicherblock.
nCharSize
Die Größe (in Byte) des zeichentyps, der vom Zeichenfolgen-Manager verwendet wird.
Rückgabewert
Gibt einen Zeiger auf den neu belegten Speicherblock zurück.
Hinweis
Signalisieren Sie keine fehlgeschlagene Zuordnung, indem Sie eine Ausnahme auslösen. Stattdessen sollte eine fehlgeschlagene Zuordnung durch Zurückgeben von NULL signalisiert werden.
Hinweise
Rufen Sie IAtlStringMgr::Free oder IAtlStringMgr::ReAllocate auf, um den von dieser Methode zugewiesenen Speicher freizugeben.
Hinweis
Verwendungsbeispiele finden Sie unter Speicherverwaltung und CStringT.
IAtlStringMgr::Clone
Gibt einen Zeiger auf einen neuen Zeichenfolgen-Manager für die Verwendung mit einer anderen Instanz von CSimpleStringT
.
IAtlStringMgr* Clone() throw();
Rückgabewert
Gibt eine Kopie des IAtlStringMgr
-Objekts zurück.
Hinweise
Wird häufig vom Framework aufgerufen, wenn ein Zeichenfolgen-Manager für eine neue Zeichenfolge benötigt wird. In den meisten Fällen wird der this
Zeiger zurückgegeben.
Wenn der Speicher-Manager jedoch nicht von mehreren Instanzen CSimpleStringT
verwendet wird, sollte ein Zeiger auf einen verharrbaren Zeichenfolgen-Manager zurückgegeben werden.
Hinweis
Verwendungsbeispiele finden Sie unter Speicherverwaltung und CStringT.
IAtlStringMgr::Free
Gibt eine Zeichenfolgendatenstruktur frei.
void Free(CStringData* pData) throw();
Parameter
pData
Ein Zeiger auf den Speicherblock, der freigegeben werden soll.
Hinweise
Gibt den angegebenen Speicherblock frei, der zuvor durch "Zuordnen " oder "Neuzuweisen" zugewiesen wurde.
Hinweis
Verwendungsbeispiele finden Sie unter Speicherverwaltung und CStringT.
IAtlStringMgr::GetNilString
Gibt einen Zeiger auf eine Zeichenfolgendatenstruktur für eine leere Zeichenfolge zurück.
CStringData* GetNilString() throw();
Rückgabewert
Ein Zeiger auf das Objekt, das CStringData
zum Darstellen einer leeren Zeichenfolge verwendet wird.
Hinweise
Rufen Sie diese Funktion auf, um eine Darstellung einer leeren Zeichenfolge zurückzugeben.
Hinweis
Bei der Implementierung eines benutzerdefinierten Zeichenfolgen-Managers muss diese Funktion niemals fehlschlagen. Sie können dies sicherstellen, indem Sie eine Instanz in CNilStringData
die Zeichenfolgen-Manager-Klasse einbetten und einen Zeiger auf diese Instanz zurückgeben.
Hinweis
Verwendungsbeispiele finden Sie unter Speicherverwaltung und CStringT.
IAtlStringMgr::Reallocate
Stellt eine Zeichenfolgendatenstruktur neu zu.
CStringData* Reallocate(
CStringData* pData,
int nAllocLength,
int nCharSize) throw();
Parameter
pData
Zeigen Sie auf den zuvor von diesem Speicher-Manager zugewiesenen Speicher.
nAllocLength
Die Anzahl der Zeichen im neuen Speicherblock.
nCharSize
Die Größe (in Byte) des zeichentyps, der vom Zeichenfolgen-Manager verwendet wird.
Rückgabewert
Gibt einen Zeiger auf den Anfang des neu belegten Speicherblocks zurück.
Hinweise
Rufen Sie diese Funktion auf, um die Größe des vorhandenen durch pData angegebenen Speicherblocks zu ändern.
Rufen Sie IAtlStringMgr::Free auf, um den von dieser Methode zugewiesenen Speicher freizugeben.
Hinweis
Verwendungsbeispiele finden Sie unter Speicherverwaltung und CStringT.