首页 > 解决方案 > C++和C++/CLI之间的流参数转换

问题描述

我在 C++ 中有一个函数,它接受一个流作为输入:

std::ostream& operator<<(std::ostream &o, XObj x);

将内容打印xo.

我在 C++/CLI 中为该类编写了一个包装器XObj,它具有将对象的内容写入流的功能:

void XObj_wrapper::to_stream(System::IO::Stream ^s);

包装函数构造一个std::stringstream,调用operator<<上述方法来填充字符串流,最后将字符串流的内容转储到s. 它可以工作,但我担心的是函数的速度:它将包装对象的内容转储到中间数据结构(字符串流),然后将其输出到s.

我的问题是,这可以有效地完成,即没有中间数据结构吗?

标签: c++streamc++-cli

解决方案


推荐阅读