c++ - Qt Creator/qmake - 从源目录加载 Assets 文件夹,而不是构建目录

标签 c++ directory qt-creator assets qmake

有没有办法在程序执行时指定运行时的根目录?我问的原因是因为我希望能够有一个 Assets 文件夹,我可以通过 "assets/" 相对地在代码中访问它,而不是必须键入 "绝对/路径/到/ Assets ”。最坏的情况我可以创建一个宏或一个 const std::string/QString 来附加到所有内容,但我发现只允许项目能够从源目录访问所有内容会更清晰,而不是实际的构建目录。

如果有的话,如何实现?

编辑

我还应该声明,我在 Linux 中运行,目前没有任何跨平台使用的计划,主要是因为我只是在创建学习项目。

最佳答案

将您的工作目录切换到应用程序可执行文件的目录,如下所示:

if (QDir::setCurrent(QCoreApplication::applicationDirPath())) {
  // success!
  ...
}

跨平台的。

关于c++ - Qt Creator/qmake - 从源目录加载 Assets 文件夹,而不是构建目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11236023/

相关文章:

qt - 如何在Qt Creator中添加 "Add Definition in class.cpp"的快捷键

maven - 查找多模块 Maven Reactor 项目的根目录

c++ - 当/MT 和/MD 都需要时怎么办?

c++ - 如何使用cmake进行C++快速检查(基于属性的测试)?

c++ - 在通用编程/TMP 世界中,模型/策略和 "concept"究竟是什么?

qt - 带绝对路径的 QDir mkdir

file - 如何为 scons 指定一个目录来存储所有 .o(中间) 文件?

qt-creator - QtCreator for windows : is it possible to build 64 bit . exe?

C++ NaN 字节表示在赋值期间发生变化

c++ - 在 Windows 上编译静态 QT 应用程序