gpt4 book ai didi

c++ - 简单的跨平台设置管理器

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:54:45 24 4
gpt4 key购买 nike

我正在编写一个名为 Bombz 的跨平台游戏(用 C++ 编写),我需要一种方法来读取/写入用户设置等,其中还将包括已完成哪些级别的记录。像 ini 文件解析器这样的东西就可以了,它实际上不需要高效和/或可扩展 - 我可以在启动时读取所有设置,而不是即时查找命名键。

我找到了一些简单的 ini 文件解析器,但它们忽略了将文件存储在何处的问题,看起来我可能不得不自己编写所有这些东西。我应该只使用类似的东西吗:

  • Windows:$APPDATA/realh/Bombz/config
  • Mac:$HOME/Library/Bombz/config
  • Linux 等:$HOME/.bombz/config(或使用 XDG 规范)

我在哪里使用 getenv() 查找 $HOME$APPDATA?我知道在 Windows 中有“更受认可”的查找方法,但我是 Linux 专家,我不想直接处理 Windows API。

最佳答案

嗯,这很有趣——有人试图在不调用操作系统功能的情况下编写游戏。相当大的挑战。

除此之外,如果您不想调用 SHGetKnownFolderPath(),那么环境变量是您唯一的选择。尽管对我自己来说,我什至不信任 Linux 上的 $HOME —— 我使用 getpwuid_r()。以及 MacOS 上的 NSHomeDirectory()。

关于c++ - 简单的跨平台设置管理器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11582706/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com