如何查询boost :: filesystem :: path的长度?

时间:2011-08-30 22:12:05

标签: c++ boost path

我在boost::filesystem::path中找不到“路径长度”方法,有吗?

如果没有这样的方法(为什么?) - 我应该使用.native()。length()或.string()。length()?
我把它.string()。length()应该更快,对吧?

3 个答案:

答案 0 :(得分:1)

string()方法怎么样? (返回std :: string)

fs::path path;
...
path.string().size();

答案 1 :(得分:0)

路径上没有长度,并没有真正遵循你想要它的原因。

.string()是通常建议用于外部可见表示的内容。查看他们文档中的path decomposition table,以获得对所期待的内容的温暖模糊保证。

我没有理由相信表现会有所不同。在你的探查器告诉你之前,你可能不应该担心它。 :)

答案 2 :(得分:0)

.native()直接返回路径的内部表示,而string()可能会执行一些转换。总而言之,尽管您使用的是native().length()还是string().length(),但它并没有多大区别。