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 中提供的文本转换宏,这可确保此类可以安全用于循环中且不会溢出堆栈。

如果此类尝试在堆上分配内存并失败,它将使用 E_OUTOFMEMORY 的参数调用 AtlThrow

默认情况下,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 类型的文本字符串。

另请参阅

CA2AEX 类
CA2CAEX 类
CW2AEX 类
CW2CWEX 类
CW2WEX 类
类概述