任何人都可以解释一下如何在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++上下文中的WORDunsigned 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>

10-08 04:15