class a2w
{
wchar_t* buffer;
public:
explicit a2w(const char* str):buffer(0)
{
if(str)
{
size_t nu = strlen(str);
size_t n = ::MultiByteToWideChar(CP_ACP,0,(const char *)str,int(nu),NULL,0);
buffer = new wchar_t[n+1];
::MultiByteToWideChar(CP_ACP,0,(const char *)str,int(nu),buffer,int(n));
}
}
~a2w() { delete[] buffer; }
operator const wchar_t*() { return buffer; }
};
本文介绍了一个名为a2w的C++类,该类实现了从多字节字符到宽字符的转换。通过构造函数接受一个常量字符指针,并使用MultiByteToWideChar函数完成转换过程。
1442

被折叠的 条评论
为什么被折叠?



