C++ 准备一份C++;winRT中使用的std::ostream库

C++ 准备一份C++;winRT中使用的std::ostream库,c++,windows-runtime,C++,Windows Runtime,我想在新的winRT应用程序中使用现有库。问题在于,该库对std::ostream的日志记录和其他文件过程充满了依赖性。有没有一种方法可以从运行时获取有效的流,并将其转换为stl格式?还是我必须将其全部转换为使用winRT流?这将是不可取的,因为这意味着它将不再是便携式的。谢谢。 < P> MFC、COM、ATL、WTL、WRL、C++、CX等都是基于C++的,因此不是OSWATE的工作,在WINRT-API API应用程序中,Windows Store应用程序容器化更关注数据的目标位置,如目标

我想在新的winRT应用程序中使用现有库。问题在于,该库对std::ostream的日志记录和其他文件过程充满了依赖性。有没有一种方法可以从运行时获取有效的流,并将其转换为stl格式?还是我必须将其全部转换为使用winRT流?这将是不可取的,因为这意味着它将不再是便携式的。谢谢。

< P> MFC、COM、ATL、WTL、WRL、C++、CX等都是基于C++的,因此不是OSWATE的工作,在WINRT-API API应用程序中,Windows Store应用程序容器化更关注数据的目标位置,如目标位置在App容器的能力之外,那么在流上返工就没有意义了

键调用顺序如下

storageFileObj=GetFileFromApplicationUriAsync(ref new Uri("ms-appdata:///local/data.file"))
ofstream(storageFileObj->Path->data) //Actually data here is wchar*, while ofstream will want char*

首先想到的是:围绕winRT流滚动您自己的
std::ostream
或(更可取)
std::streambuf
包装器。但由于我对winRT streams一无所知,这只是猜测。不知道这是否可能,或者是否已经完成了。正式地说,这是微软的责任。标准说明标准输出流的名称为
std::cout
。WinRT可能有其他名称,也可能有不同的方法,但这并不会带走
std::cout
。再说一遍,微软和标准。。。