IAtlStringMgr 類別
這個類別代表記憶體管理員的 CStringT
介面。
語法
__interface IAtlStringMgr
成員
方法
名稱 | 描述 |
---|---|
分配 | 呼叫此方法以配置新的字串資料結構。 |
複製 | 呼叫這個方法,以傳回新字串管理員的 CSimpleStringT 指標,以便與 另一個 實例搭配使用。 |
免費 | 呼叫此方法以釋放字串資料結構。 |
GetNilString | 傳回空字串物件所使用物件的指標 CStringData 。 |
重新配置 | 呼叫此方法以重新配置字串資料結構。 |
備註
此介面會管理 MFC 獨立字串類別所使用的記憶體;例如 CSimpleStringT 、 CStringT 和 CFixedStringT 。
您也可以使用此類別來實作自訂字串類別的自訂記憶體管理員。 如需詳細資訊,請參閱 記憶體管理和 CStringT 。
需求
標頭: atlsimpstr.h
IAtlStringMgr::Allocate
配置新的字串資料結構。
CStringData* Allocate(int nAllocLength,int nCharSize) throw();
參數
nAllocLength
新記憶體區塊中的字元數。
nCharSize
字串管理員所使用的字元類型大小(以位元組為單位)。
傳回值
傳回新配置記憶體區塊的指標。
注意
請勿透過擲回例外狀況來發出失敗的配置訊號。 相反地,應該傳回 Null 來發出失敗的配置訊號。
備註
呼叫 IAtlStringMgr::Free 或 IAtlStringMgr::ReAllocate 以釋放此方法配置的記憶體。
注意
如需使用範例,請參閱 記憶體管理和 CStringT 。
IAtlStringMgr::Clone
傳回新字串管理員的指標,以便與 另一個 實例 CSimpleStringT
搭配使用。
IAtlStringMgr* Clone() throw();
傳回值
傳回 物件的複本 IAtlStringMgr
。
備註
當新字串需要字串管理員時,通常會由架構呼叫。 在大部分情況下,會 this
傳回指標。
不過,如果記憶體管理員不支援由 多個 實例 CSimpleStringT
使用,則應該傳回可共用字串管理員的指標。
注意
如需使用範例,請參閱 記憶體管理和 CStringT 。
IAtlStringMgr::Free
釋放字串資料結構。
void Free(CStringData* pData) throw();
參數
pData
要釋放之記憶體區塊的指標。
備註
釋放先前由 Allocate 或 Reallocate 配置的指定記憶體區塊。
注意
如需使用範例,請參閱 記憶體管理和 CStringT 。
IAtlStringMgr::GetNilString
傳回空字串之字串資料結構的指標。
CStringData* GetNilString() throw();
傳回值
物件指標 CStringData
,用來表示空字串。
備註
呼叫此函式以傳回空字串的表示。
注意
實作自訂字串管理員時,此函式絕不會失敗。 您可以將 的 CNilStringData
實例內嵌在字串管理員類別中,並傳回該實例的指標,以確保這一點。
注意
如需使用範例,請參閱 記憶體管理和 CStringT 。
IAtlStringMgr::Reallocate
重新配置字串資料結構。
CStringData* Reallocate(
CStringData* pData,
int nAllocLength,
int nCharSize) throw();
參數
pData
這個記憶體管理員先前配置的記憶體指標。
nAllocLength
新記憶體區塊中的字元數。
nCharSize
字串管理員所使用的字元類型大小(以位元組為單位)。
傳回值
傳回新配置記憶體區塊開頭的指標。
備註
呼叫此函式,以調整 pData 所 指定的現有記憶體區塊大小。
呼叫 IAtlStringMgr::Free 以釋放此方法所配置的記憶體。
注意
如需使用範例,請參閱 記憶體管理和 CStringT 。
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應