0

我制作了一个函数 dump_text(std::ostream &) 将一些文本转储到标准输出流中。文本转到文件或用户控制台。现在,我希望该文本以标准字符串对象结尾(请参阅下一个代码示例)。

void dump_text(std::ostream &p_ostream)
{
    p_ostream << "text that must endup in string object";
}

class my_class
{
    public:
    my_class(std::string &);
    operator std::ostream & ();
};

int main(int, char **)
{
    std::string l;
    my_class k(l);

    dump_text(k);
}

1) CRT 库中是否有“my_class”的标准实现?2) 有谁知道使用 std::ostream - 方法将文本分配给字符串的问题的更好解决方案?

4

1 回答 1

6

You would use a std::ostringstream.

#include <sstream>
using namespace std;

...
ostringstream out;
dump_text(out);
string value = out.str();
...
于 2012-06-21T14:50:00.667 回答