# std::filesystem::path::filename

< cpp‎ | filesystem‎ | path

path filename() const; |  | (C++17 起)

返回路径的通用格式文件名组分。

等价于 relative_path().empty() ? path() : *--end() 。

### 参数

（无）

### 返回值

path 所标识的文件名。

### 异常

可能抛出实现定义的异常。

### 示例

    #include <iostream>
    #include <filesystem>
    namespace fs = std::filesystem;

    int main()
    {
        std::cout << fs::path("/foo/bar.txt").filename() << '\n'
                  << fs::path("/foo/.bar").filename() << '\n'
                  << fs::path("/foo/bar/").filename() << '\n'
                  << fs::path("/foo/.").filename() << '\n'
                  << fs::path("/foo/..").filename() << '\n'
                  << fs::path(".").filename() << '\n'
                  << fs::path("..").filename() << '\n'
                  << fs::path("/").filename() << '\n'
                  << fs::path("//host").filename() << '\n';
    }

可能的输出：

    "bar.txt"
    ".bar"
    ""
    "."
    ".."
    "."
    ".."
    ""
    "host"

### 参阅

extension | 返回文件扩展名路径组分 (公开成员函数)
stem | 返回主干路径组分 (公开成员函数)
replace_filename | 以另一路径替换最末的路径组分 (公开成员函数)
has_filename | 检查对应路径元素是否非空 (公开成员函数)