std::filesystem::path::filename
| path filename() const; | (since C++17) | 
Returns the generic-format filename component of the path.
Equivalent to relative_path().empty() ? path() : *--end().
Parameters
(none).
Return value
The filename identified by the path.
Exceptions
(none).
Example
#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';
}Possible output:
"bar.txt" ".bar" "" "." ".." "." ".." "" "host"
See also
| returns the file extension path component (public member function) | |
| returns the stem path component (public member function) | |
| replaces the last path component with another path (public member function) | |
| checks if the corresponding path element is not empty (public member function) | 
    © cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
    http://en.cppreference.com/w/cpp/filesystem/path/filename