<filesystem>在VS2013与VS2012中的不同行为

保罗·尤尔扎克(Paul Jurczak)

在此测试程序中,VS2012 Update 4和VS2013 Update 1之间出现了不同的行为:

#include "stdafx.h"
#include <iostream>
#include <string>
#include <filesystem>

using namespace std;
using namespace std::tr2::sys;

void main()
{
  string s("C:\\");

  for (auto i = directory_iterator(path(s).parent_path()); i != directory_iterator(); ++i) 
    cout << (path(s).parent_path()/i->path()).string() << endl;
}

VS2012产生:

C:AUTOEXEC.BAT
...

VS2013产生:

C:C:AUTOEXEC.BAT
...

哪种行为符合C ++标准?

编辑

既然filesystem还不是C ++标准,但是只是一个库提议,我改一下我的问题:VS2013行为是一个错误吗?

马里乌斯·班西拉(Marius Bancila)

我相信这是VC ++ 2012中的错误。这是VS 2013中C ++ 11/14 STL功能,修复和重大更改的摘录

<filesystem>的directory_iterator返回的路径太短(DevDiv#411531)。(请注意recursive_directory_iterator可以正常工作。)我们修复了directory_iterator以遵循N1975(文件系统V2草案)。(文件系统V3已备受关注,但不会在2013 RTM中实现。)

在这里可以找到N1975

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从VS2012迁移到VS2013或VS 2015

来自分类Dev

如何在VS2012中安装VS2013扩展包

来自分类Dev

AppFabric DataCacheFactory()初始化在VS2013中挂起,在VS2010和VS2012中工作正常

来自分类Dev

Filesystem.php中的ErrorException

来自分类Dev

关于Hadoop中的FileSystem类

来自分类Dev

VS2013中出现错误“找不到类型或名称空间名称'DotNetOpenAuth'”,但未出现VS2012

来自分类Dev

VS 2010中的System.IO.Compression.FileSystem程序集

来自分类Dev

boost :: filesystem :: path :: string()输出的奇怪行为

来自分类Dev

如何将项目从VS2012转换为VS2013

来自分类Dev

空类定义与空类声明,VS2012与VS2013

来自分类Dev

可以将VS2013与VS2012一起安装吗?

来自分类Dev

从VS2012升级到VS2013后,SGEN无法正常工作

来自分类Dev

无法将窗口布局从VS2012导入VS2013

来自分类Dev

VS2012和VS2013争夺.sln标头

来自分类Dev

VS2012文档可以与VS2013一起使用吗?

来自分类Dev

使VS2012兼容成为为VS2013开发的VSIX扩展

来自分类Dev

将ReSharper 8键盘设置从VS2012复制到VS2013

来自分类Dev

Clang + VS2013:包含C ++标头时发生错误(vs2012:working)

来自分类Dev

使VS2012兼容成为为VS2013开发的VSIX扩展

来自分类Dev

VS2013的奇怪行为

来自分类Dev

在Boost Filesystem中过滤文件夹

来自分类Dev

如何在FileSystem API中覆盖文件

来自分类Dev

VS2012和VS2013解决方案之间在功能上有什么区别吗?

来自分类Dev

VS2013是否使用与VS2012相同的C运行时(例如,msvcr110)?

来自分类Dev

VS2013是否使用与VS2012相同的C运行时(例如,msvcr110)?

来自分类Dev

从VS 2008迁移到VS2012或VS 2013

来自分类Dev

C ++ VS错误:提供std :: experimental :: filesystem的<experimental / filesystem>标头已被Microsoft弃用,将被删除

来自分类Dev

模板类VS2013的异常行为

来自分类Dev

而vs对于陈述的不同行为

Related 相关文章

  1. 1

    从VS2012迁移到VS2013或VS 2015

  2. 2

    如何在VS2012中安装VS2013扩展包

  3. 3

    AppFabric DataCacheFactory()初始化在VS2013中挂起,在VS2010和VS2012中工作正常

  4. 4

    Filesystem.php中的ErrorException

  5. 5

    关于Hadoop中的FileSystem类

  6. 6

    VS2013中出现错误“找不到类型或名称空间名称'DotNetOpenAuth'”,但未出现VS2012

  7. 7

    VS 2010中的System.IO.Compression.FileSystem程序集

  8. 8

    boost :: filesystem :: path :: string()输出的奇怪行为

  9. 9

    如何将项目从VS2012转换为VS2013

  10. 10

    空类定义与空类声明,VS2012与VS2013

  11. 11

    可以将VS2013与VS2012一起安装吗?

  12. 12

    从VS2012升级到VS2013后,SGEN无法正常工作

  13. 13

    无法将窗口布局从VS2012导入VS2013

  14. 14

    VS2012和VS2013争夺.sln标头

  15. 15

    VS2012文档可以与VS2013一起使用吗?

  16. 16

    使VS2012兼容成为为VS2013开发的VSIX扩展

  17. 17

    将ReSharper 8键盘设置从VS2012复制到VS2013

  18. 18

    Clang + VS2013:包含C ++标头时发生错误(vs2012:working)

  19. 19

    使VS2012兼容成为为VS2013开发的VSIX扩展

  20. 20

    VS2013的奇怪行为

  21. 21

    在Boost Filesystem中过滤文件夹

  22. 22

    如何在FileSystem API中覆盖文件

  23. 23

    VS2012和VS2013解决方案之间在功能上有什么区别吗?

  24. 24

    VS2013是否使用与VS2012相同的C运行时(例如,msvcr110)?

  25. 25

    VS2013是否使用与VS2012相同的C运行时(例如,msvcr110)?

  26. 26

    从VS 2008迁移到VS2012或VS 2013

  27. 27

    C ++ VS错误:提供std :: experimental :: filesystem的<experimental / filesystem>标头已被Microsoft弃用,将被删除

  28. 28

    模板类VS2013的异常行为

  29. 29

    而vs对于陈述的不同行为

热门标签

归档