std::filesystem::path::parent_path

来自cppreference.com
< cpp‎ | filesystem‎ | path
 
 
 
 
path parent_path() const;
(C++17 起)

返回到父目录的路径。

has_relative_path() 返回 false,则结果是 *this 的副本。否则结果是通用格式路径名为 *this 的通用路径名在其迭代中产生少一个元素的最长前缀。

参数

(无)

返回值

到父目录的路径,或并非 has_relative_path() 时返回 *this 的副本。

异常

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

示例

#include <filesystem>
#include <iostream>
namespace fs = std::filesystem;
 
int main()
{
    for(fs::path p : {"/var/tmp/example.txt", "/", "/var/tmp/."})
        std::cout << p
                  << " 的父路径为 " << p.parent_path() << '\n';
}

可能的输出:

"/var/tmp/example.txt" 的父路径为 "/var/tmp"
"/" 的父路径为 "/"
"/var/tmp/." 的父路径为 "/var/tmp"

See also

若存在则返回路径的根名
(公开成员函数)
若存在则返回路径的根目录
(公开成员函数)
若存在则返回路径的根路径
(公开成员函数)