如何使用 C++17 std::文件系统获取用户的主目录?

How can one get user's home directory using C++17 std::filesystem?

本文关键字:用户 主目录 获取 文件系统 何使用 C++17 std      更新时间:2023-10-16

我需要获取当前用户的主目录,然后将其附加到其他目录。由于该应用程序是跨平台,因此该方法应考虑到这一点。我一直在寻找没有成功的解决方案。有没有办法使用C 17 std ::文件系统获取当前用户的主目录?

no。

您所递交的唯一特殊目录是适用于临时文件的目录和当前目录。

您必须编写特定于操作系统的包装器以获取主目录。我个人认为这是一个坏主意:相反,您应该具有"用户应用程序设置"目录功能,"用户文档"目录函数等(按您的应用程序需求确定(。将这些目录与主目录进行比较的地方,以操作系统为基础。

根据我的经验,还拥有用于存储"注册表属性集"的API是一个好主意(例如,在值上具有序列化代码的字符串映射(。它可以映射到MacOS上的Plists,Windows上的注册表以及Linux上的其他内容。