我目前正在用MSVS 2010移植从stlport 5.1.3到stl的代码。我正面临一个问题,我希望有人能帮助我。
代码中的某个地方是:
HANDLE lHandle = CreateFileW(...);
ifstream lStream( lHandle );
// more job here...这是使用stlport构建的,因为basic_ifstream有一个cTor,它接受一个空*。但标准史特尔没有。我应该写些这样的东西:
ifstream lStream( /*FileName*/ );...but我的文件名是wchar_t *。如果流cTor只使用char *.
你知道附近有什么工作吗?
提前谢谢你,
多米尼克
发布于 2012-07-12 18:30:50
看来,MSVC2010中包含的stl提供了我需要的所有东西,但它不在文档中。
之所以使用CreateFile,是因为以前的std::fstream不能处理宽字符文件名。现在,它有一个cTor和一个open()成员。
此外,ifstream的新风格允许程序员设置共享保护模式。我也需要它,这是由CreateFile.
因此,“新”的力量给了我所需要的一切力量。只是医生的一点小毛病。
https://stackoverflow.com/questions/11454034
复制相似问题