任何人都可以解释一下如何在C++中将WORD转换为字符串吗?
typedef struct _appversion
{
WORD wVersion;
CHAR szDescription[DESCRIPTION_LEN+1];
} APPVERSION;
// Some code
APPVERSION AppVersions;
// At this point AppVersions structure is initialized properly.
string wVersion;
wVersion = AppVersions.wVersion; // Error
// Error 1 error C2668: 'std::to_string' : ambiguous call to overloaded function
wVersion = std::to_string((unsigned short)AppVersions.wVersion);
最佳答案
Visual C++上下文中的WORD
是unsigned short
的类型定义。
因此您可以使用std::to_string
来完成此任务:
wVersion = std::to_string(AppVersions.wVersion);
编辑:
显然,Visual Studio 2010不完全支持C++ 11功能,请改用
std::stringstream
:std::stringstream stream;
stream <<AppVersions.wVersion;
wVersion = stream.str();
确保包括
<sstream>