C++ 检索叶目录

C++ 检索叶目录,c++,boost,boost-filesystem,C++,Boost,Boost Filesystem,我有一些旧版本的boost代码,它使用boost文件系统库中path类的成员函数leaf()。然而,当我最近试图编译它时,我注意到它已经消失了,并且被弃用了 它所做的任务是获取指定文件夹中的所有目录并存储它们 在本例中,假设我正在将它们输出到控制台 例如,目录可以是: /home/user/dir/ /home/user/dir/one /home/user/dir/two /hone/user/dir/three 因此,我将/home/user/dir传入一个目录迭代器,并使用is\u dir

我有一些旧版本的boost代码,它使用boost文件系统库中path类的成员函数leaf()。然而,当我最近试图编译它时,我注意到它已经消失了,并且被弃用了

它所做的任务是获取指定文件夹中的所有目录并存储它们

在本例中,假设我正在将它们输出到控制台

例如,目录可以是:

/home/user/dir/

/home/user/dir/one

/home/user/dir/two

/hone/user/dir/three

因此,我将/home/user/dir传入一个目录迭代器,并使用is\u directory()检查它是否是一个目录。我想打印路径的最后一部分,所以

one
two
three

我知道我可以通过搜索最后一个/etc来执行一些字符串操作。但是我想知道是否还有一种方法可以使用path类来执行此操作。

正如我从中所读到的,leaf()方法已替换为filename()。可以使用迭代器获取所有元素。更多信息,包括使用示例。

谢谢。我花了一些时间来测试这个,它做了我想要的。它只是让我困惑,因为它被称为“文件名”,因为它使输出看起来比我想象的有更多的变化。