CA2WEX 類別
此類別由字串轉換巨集 CA2TEX、CA2CTEX、CT2WEX 和 CT2CWEX 以及 typedef CA2W 使用。
重要
這個類別及其成員不能用於在 Windows 執行階段 中執行的應用程式。
語法
template <int t_nBufferLength = 128>
class CA2WEX
參數
t_nBufferLength
翻譯程式中使用的緩衝區大小。 默認長度為 128 個字節。
成員
公用建構函式
名稱 | 描述 |
---|---|
CA2WEX::CA2WEX | 建構函式。 |
CA2WEX::~CA2WEX | 解構函式。 |
公用運算子
名稱 | 描述 |
---|---|
CA2WEX::operator LPWSTR | 轉換運算元。 |
公用資料成員
名稱 | 描述 |
---|---|
CA2WEX::m_psz | 儲存來源字串的數據成員。 |
CA2WEX::m_szBuffer | 用來儲存已轉換字串的靜態緩衝區。 |
備註
除非需要額外的功能,否則請在程式碼中使用 CA2TEX、CA2CTEX、CT2WEX、CT2CWEX 或 CA2W。
這個類別包含固定大小的靜態緩衝區,用來儲存轉換的結果。 如果結果太大而無法放入靜態緩衝區,類別會使用 malloc 配置記憶體,在物件超出範圍時釋放記憶體。 這可確保與舊版 ATL 中可用的文字轉換巨集不同,此類別可安全地在迴圈中使用,而且不會溢位堆棧。
如果類別嘗試在堆積上配置記憶體並失敗,則會使用 AtlThrow
自變數呼叫 E_OUTOFMEMORY。
根據預設,ATL 轉換類別和巨集會使用目前線程的 ANSI 代碼頁進行轉換。 如果您想要覆寫特定轉換的行為,請將代碼頁指定為 類別建構函式的第二個參數。
下列巨集是以這個類別為基礎:
CA2TEX
CA2CTEX
CT2WEX
CT2CWEX
下列 typedef 是以這個類別為基礎:
- CA2W
如需這些文字轉換巨集的討論,請參閱 ATL 和 MFC 字串轉換巨集。
範例
如需使用這些字串轉換巨集的範例,請參閱 ATL 和 MFC 字串轉換巨集 。
需求
標頭: atlconv.h
CA2WEX::CA2WEX
建構函式。
CA2WEX(LPCSTR psz, UINT nCodePage) throw(...);
CA2WEX(LPCSTR psz) throw(...);
參數
psz
要轉換的文字字串。
nCodePage
用來執行轉換的代碼頁。 如需詳細資訊,請參閱 Windows SDK 函式 MultiByteToWideChar 的代碼頁參數討論。
備註
配置翻譯程式中使用的緩衝區。
CA2WEX::~CA2WEX
解構函式。
~CA2WEX() throw();
備註
釋放配置的緩衝區。
CA2WEX::m_psz
儲存來源字串的數據成員。
LPWSTR m_psz;
CA2WEX::m_szBuffer
用來儲存已轉換字串的靜態緩衝區。
wchar_t m_szBuffer[t_nBufferLength];
CA2WEX::operator LPWSTR
轉換運算元。
operator LPWSTR() const throw();
傳回值
以 LPWSTR 類型傳回文字字串。