我有一个程序需要使用 Format(); 将字符串文字和 int 组合成 CString 变量的函数。我尝试了几种不同的方法,它们的代码在这里:
// declare variables used
CString _CString;
int _int;
// try to use format function with string literal
_CString.Format("text",_int);
// try to use format function with C-Style cast
_CString.Format((wchar_t)"text",_int);
// try to use format function with static_cast
_CString.Format(static_cast<wchar_t>("text"),_int);
第一个返回错误 C2664: 'void ATL::CStringT::Format(const wchar_t *,...)' : cannot convert parameter 1 from 'const char [33]' to 'const wchar_t *'
第二个,没有错误,但文本显示为汉字。
第三个返回错误 C2440: 'static_cast' : cannot convert from 'const char [33]' to 'wchar_t'
将 CStrings 转换为 wchar_t *s 的任何想法?
谢谢