gpt4 book ai didi

c++ - 错误 : no matching function for call to ‘to_string(std::basic_string&)’

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:28:21 24 4
gpt4 key购买 nike

即使在模板中我可以有任何类型,函数 to_string 对基本字符串不起作用:

例如:

std::string str("my string");
my_class(str);

用这个仿函数定义:

template<class valuetype>
void operator()(valuetype value)
{
...
private_string_field = std::to_string(value);

不起作用。这是错误:

error: no matching function for call to ‘to_string(std::basic_string&)’

避免它的最佳方法是什么。

事先,我要求避免仅仅因为一些常见的关键字就链接到不相关的问题。

最佳答案

std::to_string仅适用于基本数字类型。

如果您需要更通用的功能,boost::lexical_cast将适用于更多类型 - 实际上是任何可以发送到 iostream 的类型。

#include <boost/lexical_cast.hpp>

...

private_string_field = boost::lexical_cast<std::string>(value);

关于c++ - 错误 : no matching function for call to ‘to_string(std::basic_string<char>&)’ ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29336077/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com