to_string(42)多个实例匹配参数

时间:2013-04-29 22:54:37

标签: c++ ambiguity

在主题中,我使用VS2010:

我有:

std::string s = std::to_string(42);

和错误

Error   4   error C2668: 'std::to_string' : ambiguous call to overloaded function

如何修复它?

1 个答案:

答案 0 :(得分:4)

Visual C ++ 2010只有std::to_string的三个重载,包含long longunsigned long longlong double。该标准定义了更多,但VC ++ 2010不支持它们。不需要int文字42的转换,因此调用不明确。相反,您可以使用不同类型的整数文字。例如:

std::string s = std::to_string(42LL);