准备一个充满std::ostream的c++库,以便在winRT中使用

Prepare a C++ library full of std::ostream for use in winRT

本文关键字:c++ winRT ostream 一个 std      更新时间:2023-10-16

我有一个现有的库,我想在一个新的winRT应用程序中使用。问题是该库充满了对std::ostream的依赖,用于日志记录和其他文件过程。是否有一种方法可以从运行时获得有效的流,我可以转换为静态形式?或者我必须将其全部转换为使用winRT流吗?这是不可取的,因为这意味着它将不再是可移植的。谢谢。

MFC, COM, ATL, WTL, WRL, c++/CX等等都是基于c++的,所以在(基于WinRT api的应用程序目标)Windows Store应用程序容器化中,关注的更多是数据的目标位置,如https://msdn.microsoft.com/en-IN/library/hh967755.aspx所述,如果目标位置在应用程序容器的能力之外,那么在流上重新工作将是毫无意义的。

键调用顺序如下

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