其他分享
首页 > 其他分享> > c – 标准库函数,用于将提供operator <<的对象转换为std :: string

c – 标准库函数,用于将提供operator <<的对象转换为std :: string

作者:互联网

我刚才注意到我在我的C 11应用程序中使用了以下代码(工作安静很好):

template <typename T>
std::string output_streamable_to_string(T const& kObject) {
  std::ostringstream os;
  os << kObject;

  return os.str();
}

所以我的问题是:标准库(std)中是否存在提供此功能的函数?

我知道std :: to_string存在,但这只适用于标准库数据类型.我想将boost :: asio :: ip :: udp :: endpoint转换为std :: string.由于boost :: asio :: ip :: udp :: endpoint只提供一个运算符<<函数,我需要将std :: ostream转换为std :: string.

解决方法:

不,标准C中没有这样的功能.但是既然你使用了boost – 你可以使用boost::lexical_cast,或者只使用你自己的.

标签:ostream,c,c11,stdstring,iostream
来源: https://codeday.me/bug/20190829/1764547.html