c++ - 标准 C++ 中的非空相对当前路径?

标签 c++ working-directory std-filesystem

使用 C++17(或 Boost::filesystem),我们可以使用 filesystem::current_path() 获取当前路径/当前工作目录。然而 - 这给了我们一个绝对路径。

有时我们也可以使用空路径作为相对当前路径。

但是 - 是否有可能可移植地获得 ".""./" 的等价物?即非空相对当前路径?

最佳答案

使用“.”表示当前目录。

std::filesystem 会将 "." 识别为代表当前目录/路径 - 无论您所在的平台如何。因此,它不仅可以在 Linux/Windows 上运行,而且可以保证运行。

auto relative_current path = std::filesystem::path{"."};

标准中相关措辞:fs.path.generic.3 .

这个答案基本上是由于@NathanOliver...

关于c++ - 标准 C++ 中的非空相对当前路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67519404/

相关文章:

c++ - 如何根据另一个 vector 中的条件从 vector 中删除元素?

c++ - 如何通过CURLOPT_HEADERFUNCTION提取头部信息?

c++ - Cocos2d-x 4.0 Lens3D和Waves3D动画

c++ - filesystem::canonical 能否用于防止传递给 fstream 的文件路径的文件路径注入(inject)

c++ - Qt读取多张图片优化——如何只读取大小?

java - 运行程序以在 Eclipse 中显示当前目录内容给出的结果似乎令人困惑

linux - 如何设置父进程的工作目录?

c++ - 对文件系统路径 vector 进行排序时,“尝试取消引用尾后迭代器”

c++ - 从std::filesystem::path C获取绝对路径

python - 如何在 VSCode 上更改 Python (Anaconda) 的默认工作目录?