# std::filesystem::path::replace_filename

< cpp‎ | filesystem‎ | path

path& replace_filename( const path& replacement ); |  | (C++17 起)

以 `replacement` 替换单个文件名组分。

等价于： remove_filename(); return operator/=(replacement); 。

### 参数

replacement | - | 用于替换文件名组分的 `path`

### 返回值

*this

### 异常

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

### 示例

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

    int main()
    {

        std::cout << fs::path("/foo").replace_filename("bar") << '\n'
                  << fs::path("/").replace_filename("bar") << '\n';
    }

输出：

    "/bar"
    "bar"

### 参阅

replace_extension | 替换扩展名 (公开成员函数)
filename | 返回文件名路径组分 (公开成员函数)
remove_filename | 移除文件名路径组分 (公开成员函数)
has_filename | 检查对应路径元素是否非空 (公开成员函数)